Having my Pi

I’ve had access to this Raspberry Pi for a few weeks now and I feel compelled to post an update regarding how I’m getting on.

First off. I love this little thing. The last few weeks have been an adventure. It’s like I’m back in 5th grade when I was just getting into computers and really getting a feel for what I could do with them. Or when I was 17 and setting up a LAN complete with a ridiculous number of extrenuous servers types with my room-mates in our apartment. Back in the day when we would set up an intranet web and media server just because we didn’t have one, not because it filled any particular need.

Getting back into Linux has been the most daunting part of using the Pi. As much as I love the OS I never really understood it. I also found that Linux, for me, prompts a compulsion toward endless re-configuration. I’ve never had a Linux installation that lasted more than a few days. I just can’t help myself. I fiddle, update and configure until nothing works anymore and it’s just quicker to re-install or re-image. Because of this, and many other reasons, Linux and I parted ways some years ago and I’ve never looked back. Now here I am with a tiny little Linux box that could possibly become a big part of my job/career/life, and forgiveness is not in Linux’s nature.

So what have I done so far.

As soon as I had my Pi in hand I got a hold of a breakout cable, breadboard and some LEDs. After having already become reasonably proficient with Python I was desperate to try out the GPIO programming. Within just a few minutes I had a single LED blinking on an off. Then I plugged in two more LEDs and programmed a traffic light. Now after how ever many weeks I have upgraded to 8 LEDs and have it cycling randomly through a growing set of blinking sequences. One of which is programmable. Programming these lights became a daily kata for a while. When I took a break from a larger project I’d spend an hour programming another sequence.

I got Raspbmc set up and working across the school network. It was a challenge and while it’s functional it is unstable to say the least. It works well enough, I hope, that a teacher might be able to use it but I’m going to need to do a lot more testing first.

To date I’ve re-imaged my Pi 9 times. Three due to a suspected corrupted SD card and the rest due, mostly, to various experiments and testing that I’ve been doing.

What have I learned?

NOOBS is great but raw images are better. I’ve always found this to be the case with Linux. These one size fits all solutions that are constantly on offer are never the best solution.

Power is everything to the Pi, power it from a proper mains adaptor whenever possible. A shortage of power can result all sorts of problems, none of which are indicative of low power levels.

A 4GB SD card is not big enough. I have a 4GB card and and 8GB card. As soon as I get the OS up and running on the 4GB I’m immediately up against the wall space wise. Using the raw image really helps as the NOOBS image isn’t taking up space somewhere but it’s not enough. As soon as I install a larger package, such as Open Office, I find myself running out of space. On the 8GB card, I have NOOBS and to distros installed and space hasn’t become an issue yet.

Where do I go from here?

I’m trying to keep the purchases to a minimum being that is isn’t actually my Pi, so most of my planned projects are software based. I’m going to eventually purchase my own Pi at which point

My compulsion towards configuration is greatly eased by the compactness of Raspbian. Re-imaging is now a ten minute process where as before it could be hours.

The ICT department and I are looking at starting an after school club called Raspberry Jam. Where we’re going to test out some of the new curriculum stuff for next year on the attendees. If things go well then we’re going to embark on a project, perhaps involving a quadracopter.

Raspberry PI in education

20131128-120339.jpgMy tune regarding the Raspberry Pi has changed somewhat over the last few months. Being at a school the subject of using Raspberry Pis has come up a number of times and I’ve always generally dismissed the idea. What would we use them for really? I’ve never been able to come up with a valid use for them at the school. Sure there are lots of little projects that we could do but try as I might I just couldn’t come up with anything that wouldn’t leave them locked up in some room somewhere for most of the year. A lot of people seem to be of the mentality that it’s ok if it doesn’t get used much because it was cheap but not me. A lot of time and money gets wasted that way. I had considered them, and then dismissed them as not being usable.

Recently I’ve been asked to revisit the Pis. An ICT teacher approached me with the idea of using them in the upcoming curriculum changes as the primary development device for a small group of students. This teachers idea was to get about 15 of them, check them out to pairs of students and then teach them Python and some of the GPIO programming over the entire spring term. We discussed the pros and cons, mostly cons, of using Pis and we decided to get our hands on a couple and try them out.

So while I waited for the Pis to arrive I set about researching them and what other schools are using them for and what the costs would be.

One of the major ideas with the Pi is that they could be given to students as a sort of mobile solution. They transport their devices from class to class and even home and they have a full suite of applications right there at their disposal. The problem with this is that students can’t necessarily be trusted to rememeber to bring them in every day, or not to lose them, or break them etc…

Purchasing a Raspberry Pi

Sadly it’s hard to state that it’s only a $35 or £27 computer, I’d almost go as far as to say that this just isn’t true. That price will get you the raspberry pi device itself but won’t include a couple of vital components, such as an SD card and a power adaptor. I’m aware that you can power the Pi without necessarily requiring a mains adaptor but many of those ways are either not practical enough, or are more expensive, for me to consider getting one. Neither of these components are expensive but together they add a minimum of around £10 on to the price. So if you’re thinking about purchasing a RPi then you need to be thinking £40, not £27, and I haven’t included a mouse or keyboard either due to their price and availability being so varied, you could probably pretty easily get either or both for £1 or less if you know where to look and there’s always SSH and other remote access options as well, this also applies to a display. But hey, it’s still far cheaper than pretty much anything else out there.

Our requirements demand a couple more accessories (such as WiFi) so in total each Pi is costing us around £60 each.

RPi vs Windows desktop PC

Security

  • Physical: students taking off with the RPi and the fact that there’s potentially going to be a room full of loose periferrals hanging around. To combat this I’m thinking something in the way of a checkout system. There’s only going to be thirty of these things so it’s not like it will be terribly time consuming, and I can always write some software to handle this as well. Any excuse to write software. As far as the periffereals are concerned the easiest solution I can come up with is some creative zip tying. I’ll think on that some more later.
  • Network: Linux has a bit of a reputation as an operating system for hackers. Just becuse the OS is being used doesn’t mean that users have the know how required to ‘hack’, and if they do, the fact that they are or aren’t using linux is going to make much of a difference trust me. This school has a fairly stable and secure network and the internet traffic is handled by a proxy server, I don’t anticipate any problems.

Usability

  • We finally live in a world where there is more than one major operating system. Just with Windows 7, Windows 8, OSx, Android and iOS, and complaints about having to learn a new operating system I feel is completely unwarranted. We not asking the kids to be power users and the desktop interface is actually not that different. I don’t expect that there will be much of a problem and it will give kids a much better idea about the difference between operating systems.

Flexability

  • The raspberry pi can potentially be used for just about anything. Every week I’m hearing about some crazy new project that people have done with them, it’s very exciting. As a technical solution, the Pis are just about as flexible as anyone could want.

Cost

  • Pis are so much cheaper it’s ridiculous and all the open source software solutions that are, and will be available only sweeten the deal. Storage is another saver, instead of rooms full of computers you have a cupboards full.

Software

  • The RPi comes limited software installed but there’s plenty of software available such as Libre office for word-processing work and the like. Open source software may generally lack a little bit with regard to GUI aesthetics but it’s all there in terms of functionality. The number one thing that our students complain about when it comes to IT in the school is that they don’t have enough access to word-processing. I hope that the Pis will completely resolve this complaint.

Trade-offs.

  • They’re not the fastest. It’s true, with only a 700mHZ processor and 512mB of ram they are sluggish to say the least. I can’t be over clocked reasonably safely up to 1gHZ which helps but it’s still slow. For a place like a school where the majority of work is internet searching, word-processing and hopefully soon some light programming does it really matter all that much? With a Raspberry Ri I can boot up and be using any of those three functions within 2 minutes, which is a lot faster than many modern computers, especially in a tightly controlled and locked down system like ours.

They don’t have a screen. It’s hard to consider this much of a trade off really, for two reasons.

  1. I’ve never worked at a company, in which computers are the primary tool, where there wasn’t an adundance of monitors. I’ve got three monitors going spare in my attic, I’ve got a spare monitor in a cupboard in my office right now. Monitors may break, but they don’t die. When computers wear out or get upgraded their monitors usually stay put. And even if you don’t have monitors going spare they aren’t expensive by any stretch of the imagination. I personally have purchased a working monitor from eBay for £1 on two occasions.
  2. You don’t need a monitor beyond the initial setup, just SSH into the Pi and off you go, or set up VNC.

What if the student loses, breaks, forgets their Pi?

  • I fail to see the relevance of this questions personally. What do you do if a student loses, breaks, forgets anything else?

But they’re slow (only 700mHZ).

  • A university has recently combined 64 RPis together to create a low budget super computer. With 64 Pis they managed to generate 11gHZ of processing power. So when I was challenged by the Pis being slow compared to the standard desktop computers I simply suggested this.A slightly better than average standard PC in the school houses a 3.3gHZ processor and 4GB of ram and costs about £360 from our supplier. This doesn’t include anything other than the base unit.
    1 Raspberry Pi houses a 700mHZ and 512MB of ram and cost £275 Raspberry Pis would cost £135 (just the boards), plus the accessories needed to link them all together, we’ll say £150 to be on the safe side making a total of £285 for a theoretical  3.5gHZ of processing and 2.5GB of memory. Sure you’d probably struggle to get 3.5gHZ out of just five, but hopefully you can see my point. Add two more Pis and you’d be up to around £339 which is still cheaper than one desktop.

 

My advice to any school, or equally anyone, who is looking to get one of these is this: have a good clear picture of what you plan to use it for. Preferably two or three. As well as our plan for the students, I aim to use XMBC to set up the Pis as a media centre for use with some of the interactive white boards that we have on site and I’m toying with the idea of setting up one as an internal web server as well. A lot of technology in industry, particularly in education winds up being locked away somewhere and forgotten and it’s a terrible waste.

I have my Pi now and I’m having a blast playing with it. It truly is a very cool little device and hopefully I’ll have it doing something equally cool very soon.

Being The Boss.

21-01-13

I’ve got a module this semester where in, we’re to work as small games companies. It’s straight forward enough, the class of 30ish students has been split into two teams of ten and we’re using the Cry engine and Scrum to create one prototype game each. The game has to be a FPS zombie killing game, multiplayer optional.

Now, in that we’re supposed be working as a games company we were all to be given roles based on skills and personal preference. These roles were to be given out by the company producer, an elected executive type role, basically the producer is the guy in charge. This role has real power in the module, they manage the team, make all the final decisions about the game and if necessary, discipline team members. The producer can actually have members of his team kicked off the module if it’s deemed necessary.

I’d put my name in for producer. Thinking that, if I got it, it would be good experience relating to my plans after graduation, I also thought it would be nice if I was actually put in charge of a project by my peers instead of just assuming the role.

The campaign was short, we stood in front of the class and presented our fitness for candidacy for 2 minutes each. I’m not well known at the university and I don’t even think I’m well liked, I have a habit of winding up total strangers and openly mocking design students, many of whom were on that module. I screwed up my ‘speech’ delivery pretty royally and made myself look a real idiot. But when the votes came in I (having snuck a peek at the count) was on top… oh… goodie.

So now, here I am leading one of three teams in making a game from the ground up. We’re using a commercial grade engine so it’s not nearly as much work as it sounds, but there’s still an awful lot to do, especially for me. I’ve got 10 other students relying on me to get a good grade in this module, I’ve got to manage their time, their tasks and the quality of their work. I’ve got to organise and lead regular meetings, orchestrate documentation and be held accountable for any and all the problems. I’ve also got to track it all and report on it. I have a lead artist, designer, tools developer, scripter and 6 team members assigned to various areas. In all I have 2 game designers and 8+ programmers, I’m still waiting for a couple a stragglers to be assigned to my team. All looking to me for decisive guidance and support…

What have I gotten myself in to?