Tag Archives: students

Software house starts

The student software factory is up and running. It’s on a volunteer basis with about four or five students meeting twice a week for about two hours each session. Some of them do a bit on the projects outside of this time, but not a great deal as they still have other committments for coursework, and paying jobs to supplement their income. Nonetheless, they are enthusiatic and are providing teams to help work out what’s required to scale this up and remove any impediments when we hopefully offer it as an optional module next year.

The biggest holdup so far is getting software tools in place for students and ensuring that all team members can push/pull code changes from the git repositories that we’re using. When I get some time I must set up basic downloads from local sources for students to use instead of downloading from the original sources. Similarly, they need to have clear instructions for setting up system paths, etc for Windows, Linux and Mac OSs, which students seem to be using.

My aim for getting the project management aspects going, user stories, metrics, etc is to introduce them as we go along, and as they’re needed. I want to keep the students enthused in their work, and to let them take the lead to code up the examples as they go along and put order into their work as needed to keep it going in the right direction.

Pursuing the bigger picture of a running software house, was the tangential idea of having any appropriate students helping out in the summer months. We’ll see if that can be sorted out. While we couldn’t offer the students paying work, we could offer them experience working with real clients on real p projects. This would easily run alongside the current group projects for the conversion MSc students that run in the summer, and the individual advanced MSc projects.

Similarly it would be useful to help mentor students who are running their own one-person software houses, of which there seem to be a growing number, to help them grow and improve their processes. I’m assuming that most of them slide into this by accident, and only pick up new ideas as they cover that part of the process in their coursework, or after they did a placement with a firm. Hence, they could use some mentoring to help them on their continuious improvement. It would also be useful for them to meet their fellow entrepreneurs once a fortnight or so and to discuss common problems, issues, etc. Must get it organised for next term.

Industrial Experience at Leeds, Kent and Sheffield

While at the University of Kent in Cantebury last week for the HEA-ICS conference I had a chance to discuss some of the other programmes that offer students places in software houses either as part of their undergraduate programme, or as an extra job for which they need to apply for a place. At Kent and Sheffield this can be done as part of the programme, while at Leeds this is an extra done outside of the curriculum.

About three years ago the University of Kent started their IT Clinic programme based upon the Genesys Solutions programme at the University of Sheffield. Last night I was able to speak to someone at Kent who’s worked with the IT Clinic. He told me about the programme at Sheffield, which I looked up later. Some of the interesting things about both of them are that they are integrated into the curriculum for the undergraduates and the postgraduate students. This means that the students are getting course credits for the work they do, and that the ‘work’ the business brings in is also separated from the ‘processes’ of project management and development, upon which they are assessed. At Kent the IT Clinic is also only one stream of many, which the students can do for their degree, as it is not something that all students will want to pursue.

At Sheffield all students do group projects as part of the ‘Software Hut‘ (link to course site), which explicitly uses extreme programming, TDD and pair programming as part of the process from the very beginning of the term. Once they have done this module, then they can go and do further development and project work in the Genesys Solutions office for credit and gain further experience. The projects for the Software Hut are for external clients, but each client might have four teams competing to build the ‘best’ solution for that client, with the ‘winning’ one chosen by the client being the one implemented in the end. This is an intriguing idea, but I’d have thought it would be a waste of time, as the client doesn’t get any results until much later, and they work with a fake luxury of multiple prototypes that can be tried and tested, which is not the usual way things work.

At Leeds the students can apply to take part in the Leeds Source-IT consultancy project. This is a new venture, which started around February of this year as a way for students to gain more practical experience, while also providing a service to the community. A key issue, which they have noticed is that students can only work about five hours a week on their projects during term time, to allow for their time for coursework. Needless to say, this proves limiting in how much work the team can take on at any one time.

One difference with the Kent solution is that it is as much about software development as it anything else, which can be a project. Therefore the consultants there will do laptop clinics to help students out at the start of term, and they’ll also do other hardware projects, and not just focus on software. On the one hand this can be a useful awareness raising activity, but on the other, it is diverting attention away from learning the tools of the trade in software engineering. Focusing on software will also look better on the cv for the student too, when she or he comes to apply for work after they finish their degree.

Both Kent, and presumably Sheffield too, have staff who look after the programme finding clients for the teams. In Kent, they have hired outside consultants, who worked in the region previously and therefore had good understanding of the local market. At Leeds they have someone who looks after all of the student related programmes in the department to look after this one too.

I think I need to plan a path that gets our programme to such a state as simply and naturally (ie as organically in a natural progression) as possible. Establish the components, glue the components together in a path students can take, and show their value to the department as a whole. This is the next step in this project.

UPDATE: (10 Sept) Forgot to mention Philip Greenspun’s ideas on universities and the economy and how the curricula students encounter with project based learning can help the local economy and prepare students for the working world. While he doesn’t push a software house for students, he does provide industrial relevant projects for students to develop.