Coding for the Classroom with Meteor Series: ImageShare

When I visited Meteor headquarters for their monthly DevShop, I gave a lightning talk on my use of the Meteor framework for developing tools that helped me do my job as a teacher. Both during and after my talk, I was asked how I thought I could help other teachers learn to do what I had done. I pledged at the time that it was my goal to make some videos and tutorials about how to use it for classroom specific applications. Since then, I've had some ideas for what I might do.

When I asked idea-man Dan Meyer what he thought the first project should be, the response came back surprisingly quick:

As usual, Dan's expectations were high. I was waiting for Meteor to release its 1.0 version before getting started, so when that happened this week, I hit the books interwebs hard to figure out how to make the response viewer a reality with Meteor.

Thankfully, it actually came together quite quickly. This is an amazing testament to the power that the Meteor framework has for minimizing the idea-to-app lifecycle, and making it easy to get these tools in the hands of teachers.

You can check out my 26 minute tutorial video below. I made it almost real-time (minus some edited video flubs) to show how quick it is to get started.

I have also included the files that I made in the tutorial on Github here:
https://github.com/emwdx/image-share

Take a look and let me know what you think. I would like to do others if there are requests for teaching-related apps out there. Keep me posted on what you would like to see.

7 thoughts on “Coding for the Classroom with Meteor Series: ImageShare

  1. Evan, do you have your own server running in the classroom? Are you running a local network, or is it connected to the web? This was the one stumbling block for me. Typical shared hosting won't allow a person to install meteor and I don't have my own server at school.

    1. All I have is my laptop on the same wi-fi network as my students - no separate server. The moment I realized this was possible was the moment I suddenly had a lot less time on my hands, because I was always looking to make activities that effectively used this for good things in my classroom. I think this is a wireless router setting that is out of my control, but I haven't had an issue in different places (including hotel wifi networks) getting it to work.

      Meteor does allow you to easily deploy your app to the web though with a one line command, if you need it.

        1. Thanks for putting this together, Evan. I suppose my next question is similar to BC's here: how does one deploy onto the Internet as opposed to a local server?

          I guess a tutorial there would be pretty tough to do since the answer probably varies by the hosting service.

          1. Hi Dan,

            Luckily on Meteor, it's a single line: deploy XXXX.meteor.com where XXXX is the name of the URL you want your app to be located at. That's definitely another one of the perks to using it.

            The tutorial I made was to show how an individual teacher could put this together for his/her class or workshop. The idea there would be to use it on the local network, which would be quite fast given that it’s all in the same room, and isolated from the big, bad internet at large. Only people on the local network could upload, which probably would limit the material to the people in the room.

            If I were putting this together as a production site, on the other hand, I’d lock it down a lot more than I did in this tutorial. For example, people could easily submit anything they wanted up to the site, and it would be totally anonymous. There’s no logging of who is posting what. Furthermore, there is only one ‘room’ at the moment. I’d make it so that individual users could create rooms for themselves, accept images for different prompts, etc. A QR code would be a quick way to get mobile users to a particular room/url.

            In short, there are lots of possibilities for making this happen on a general site, but not feasible for a tutorial that I wanted to keep under 30 minutes. I also figure there are other solutions out there (GDocs, for one) that might work for this. I could certainly be wrong there though. Many of my code creations are born because other options, particularly through sites based in the US, tend to be painfully slow going here in China.

Leave a Reply