O'Really?

July 17, 2019

Educating Computer Scientists: What should we discuss at #SIGCSE journal club?

fightclub

The first rule of journal club is, you do not talk about journal club. The second rule of journal club is, YOU DO NOT TALK ABOUT JOURNAL CLUB.* Discussions will go on as long as they have to. If this is your first time at journal club, you have to debate. Dress code: silly frocks and ridiculous hats are optional. Picture of my colleagues in the School of Computer Science ready for a graduation ceremony 2013, by Toby Howard.

So we’re starting a new Journal Club and Special Interest Group (SIG) for lecturers, teachers and course leaders in Manchester to discuss Computer Science Education (CSE). We’ll pick interesting papers, read them and then meet regularly to discuss them. It’s a bit like Fight Club but instead of beating each other up, we’ll “beat up” (review & critique) papers. Hopefully we’ll all learn something along the way. The first question to answer is, which papers should we discuss?

Computer Science (CS) is a young and professionally immature subject, it has only been taught at undergraduate level since 1965 in the UK. Across the pond in America, the Association for Computing Machinery (ACM) Special Interest Group on Computer Science Education (SIGCSE.org) only started as recently as 1968, making it a very spritely fifty years young. On educational timescales, computer science is a whipper snapper! Fifty years is peanuts when you compare it to the millennia that mathematics has been taught for. In ancient Greece the earliest lessons were mathematics hence μάθημα (mathematics) means the lesson and derivatives like μαθαίνω (matheno) mean to learn or to know. While the greeks built some impressive analogue computers, digital computers and computer science as we now know it, did not exist in Ancient Greece. 🇬🇷 

What this means is that there is plenty of evidence about what works (and what doesn’t) when teaching mathematics. In contrast, how to teach Computer Science, what should be taught and why, to whom and when are all open questions

So, to get the ball rolling here are nine papers that tackle some of these open questions in Computer Science Education. We’ll vote on the three most interesting papers and read them before meeting to review them. Many of these papers are likely to be of interest to “educators” in its broadest sense. That means anyone teaching coding, computer science, tinkering, hacking and software/hardware engineering at any level. Which includes primary schools, code clubs, bootcamps, CoderDojos, hackathons, secondary schools, CPD programmes, K-12 education, lifelong learning, staff training courses, onboarding, induction, adult education programmes, return to work schemes and so on. If you’d like to join us we’ll be meeting in the Kilburn building, Manchester, M13 9PL (mosty likely first week of September, date and time tbc, drop me a line). Otherwise enjoy reading the insights below (DOI’s link to originals which may be behind a paywall, freely accessible versions are provided where available). Some papers are quite short, and have been selected for the topic they discuss rather than the quality of the content.

Twenty dirty tricks to train software engineers by Ray Dawson

A classic paper from Ray Dawson in the department of Computer Science at Loughborough University describing dirty tricks they use to introducing the frustrating realities of a software engineering development to students.

“Many employers find that graduates and sandwich students come to them poorly prepared for the every day problems encountered at the workplace. Although many university students undertake team projects at their institutions, an education environment has limitations that prevent the participants experiencing the full range of problems encountered in the real world. To overcome this, action was taken on courses at the Plessey Telecommunications company and Loughborough University to disrupt the students’ software development progress. These actions appear mean and vindictive, and are labeled ‘dirty tricks’ in this paper, but their value has been appreciated by both the students and their employers. The experiences and learning provided by twenty ‘dirty tricks’ are described and their contribution towards teaching essential workplace skills is identified. The feedback from both students and employers has been mostly informal but the universally favourable comments received give strong indications that the courses achieved their aim of preparing the students for the workplace. The paper identifies some limitations on the number and types of ‘dirty tricks’ that can be employed at a university and concludes that companies would benefit if such dirty tricks were employed in company graduate induction programmes as well as in university courses.”

Identifying student misconceptions of programming by Lisa Kaczmarczyk et al

This paper by Lisa Kaczmarczyk et al (formerly University of California, San Diego) recently came top of the ACM SIGCSE Top Ten Symposium Papers of All Time. In Lisa’s own words from the reinventing nerds podcast “The paper is sharing the results of a research study about misconceptions that novice computer science students have. Computer science is also a very abstract topic and the mistakes that students make are often baffling. The paper reports on the misconceptions that students have and why they have them. It’s important because this paper was the first to apply rigorous research methods to investigating misconceptions.” From the abstract:

“Computing educators are often baffled by the misconceptions that their CS1 students hold. We need to understand these misconceptions more clearly in order to help students form correct conceptions. This paper describes one stage in the development of a concept inventory for Computing Fundamentals: investigation of student misconceptions in a series of core CS1 topics previously identified as both important and difficult. Formal interviews with students revealed four distinct themes, each containing many interesting misconceptions. Three of those misconceptions are detailed in this paper: two misconceptions about memory models, and data assignment when primitives are declared. Individual misconceptions are related, but vary widely, thus providing excellent material to use in the development of the CI. In addition, CS1 instructors are provided immediate usable material for helping their students understand some difficult introductory concepts.”

Stride in BlueJ – Computing for All in an Educational IDE by Michael Kölling et al

This paper by Michael Kölling et al describes an Integrated Development Environment (IDE) that combines the best features of visual programming languages (blockly, scratch etc) with text-based programming (such as Python, Java, C etc) for use in BlueJ.org.

“In introductory programming teaching, block-based editors have become very popular because they offer a number of strong advantages for beginning programmers: They avoid many syntax errors, can display all available instructions for visual selection and encourage experimentation with little requirement for recall. Among proficient programmers, however, text-based systems are strongly
preferred due to several usability and productivity advantages for expert users. In this paper, we provide a comprehensive introduction to a novel editing paradigm, frame-based editing – including design, implementation, experimentation and analysis. We describe how the design of this paradigm combines many advantages of block-based and text-based systems, then we present and discuss an implementation of such a system for a new Java-like language called Stride, including the results of several evaluation studies. The resulting editing system has clear advantages for both novices and expert programmers: It improves program representation and error avoidance for beginners and can speed up program manipulation for experts. Stride can also serve as an ideal stepping stone from
block-based to text-based languages in an educational context.”

  • Kölling, Michael; Brown, Neil C. C.; Hamza, Hamza; McCall, Davin (2019). “Stride in BlueJ — Computing for All in an Educational IDE”: Proceeding SIGCSE ’19 Proceedings of the 50th ACM Technical Symposium on Computer Science Education 63–69. DOI:10.1145/3287324.3287462

Ten quick tips for teaching programming by Neil Brown and Greg Wilson

This short paper from Neil Brown at King’s College London and Greg Wilson of software carpentry fame, is part of the popular Public Library of Science (PLOS) Ten Simple Rules series. The tips capture some ongoing research in listicle format.

“Research from educational psychology suggests that teaching and learning are subject-specific activities: learning programming has a different set of challenges and techniques than learning physics or learning to read and write. Computing is a younger discipline than mathematics, physics, or biology, and while there have been correspondingly fewer studies of how best to teach it, there is a growing body of evidence about what works and what doesn’t. This paper presents 10 quick tips that should be the foundation of any teaching of programming, whether formal or informal.

These tips will be useful to anyone teaching programming at any level and to any audience.”

How to Involve Students in FOSS Projects by Heidi Ellis et al

Initiatives like Google Summer of Code (GSoC) and Git going in FOSS aim to get students involved in Free and Open Source Software (FOSS) projects, through paid work and online tutorials. Some courses use FOSS projects to teach software engineering, though these are fairly unusual. How can we get more students (and teachers) involved in FOSS projects? This paper by Heidi J. C. Ellis provides some guidance

“Software projects are frequently used to provide software engineering students with an understanding of the complexities of real-world software development. Free and Open Source Software (FOSS) projects provide a unique opportunity for student learning as projects are open and accessible and students are able to interact with an established professional community. However, many faculty members have little or no experience participating in an open source software project. In addition, faculty members may be reluctant to approach student learning within such a project due to concerns over time requirements, learning curve, the unpredictability of working with a “live” community, and more. This paper provides guidance to instructors desiring to involve students in open source projects.”

  • Ellis, Heidi J. C.; Hislop, Gregory W.; Chua, Mel; Dziallas, Sebastian (2011). “How to involve students in FOSS projects” Frontiers in Education Conference (FIE) DOI:10.1109/FIE.2011.6142994 (ironically, if there is an open access version of this paper, I can’t find it! Another nominee for the Open Access Irony Awards)

A methodology for using GitLab for software engineering learning analytics by Julio César Cortés Ríos et al

This paper by Julio César Cortés Ríos at the University of Manchester describes using GitLab to analyse and improve courses.

“To bridge the digital skills gap, we need to train more people in Software Engineering techniques. This paper reports on a project exploring the way students solve tasks using collaborative development platforms and version control systems, such as GitLab, to find patterns and evaluation metrics that can be used to improve the course content and reflect on the most common issues the students are facing. In this paper, we explore Learning Analytics approaches that can be used with GitLab and similar tools, and discuss the challenges raised when applying those approaches in Software Engineering Education, with the objective of building a pipeline that supports the full Learning Analytics cycle, from data extraction to data analysis. We focus in particular on the data anonymisation step of the proposed pipeline to explore the available alternatives to satisfy the data protection requirements when handling personal information in academic environments for research purposes.”

Scaling Introductory Courses Using Undergraduate Teaching Assistants

Teaching computer science to large classes requires typically requires armies of teaching assistants, demonstrators. Your TA’s need to know their stuff and should be able to deal with students in a fair and consistent way. This paper is a medley of opinions from Jeffrey Forbes at Duke University, David Malan from Harvard University, Heather Pon-Barry from Mt. Holyoke College, Stuart Reges from the University of Washington and Mehran Sahami from Stanford University.

“Undergraduates are widely used in support of Computer Science (CS) departments’ teaching missions as teaching assistants, peer mentors, section leaders, course assistants, and tutors. Those undergraduates engaged in teaching have the opportunity to deeply engage with CS concepts and develop key communication and social competencies. As enrollments surge, undergraduate teaching assistants (UTAs) play a larger role in student experience and outcomes. While faculty and graduate student instructional support does not necessarily increase with the number of students in our courses, the number of qualified undergraduate teaching assistants for introductory CS courses should scale with the number of students in our courses. With large courses, the significance of the UTAs’ role in students’ learning likely also increases. Students have relatively little interaction with the instructor, and faculty may have more challenges monitoring and supporting individual UTAs. UTAs have a major role in affecting climate in computer science courses. The climate in large courses has substantial implications for students from groups traditionally underrepresented in computing. This panel will discuss how undergraduate teaching assistants can serve as a scalable effective teaching resource that benefits both the students in the course and the UTAs themselves.”

What Are We Doing When We Teach Computing & Programming by Sally Fincher

Two closely related papers by Sally Fincher at the University of Kent, the first published in 1999…

“The academic discipline of computer science uniquely prepares students for future study by teaching the fundamental construct of its practice-programming- before anything else. The disciplinary argument seems to run that if a student is not versed in the practicalities, then they cannot appreciate the underlying concepts of the discipline. This may be true. However an analogous simulation would be if it were thought necessary for architecture students to be taught bricklaying before they could appreciate the fundamentals of building design. This argument is clearly flawed when compared to endeavours such as the study of English Literature, which makes no claim to teach the practice of producing work before the study of the products of others work. It is possible that this is an argument of disciplinary maturity-that all disciplines have passed through a similar phase. This paper examines the emergent approaches being defined, all of which address the central concern of the teaching of programming and its relationship to the learning of computer science. It examines: the “syntax-free” approach of Richard Bornat and Russel Shackelford, the “problem-solving” approach of David Barnes (et al.), the “literacy” approach of Peter Juliff and Owen Astrachan and the “computation-as-interaction” approach of Lynn Andrea Stein. These approaches are discussed both in their own terms, and also placed in a preliminary taxonomic framework for the teaching of programming.”

….and the second published in 2015:

“Research on the cognitive, educational, and policy dimensions of teaching computing is critical to achieving “computer literacy.”

Making CS Learning Visible: Case Studies on How Visibility of Student Work Supports a Community of Learners in CS Classrooms by Amber Solomon et al

This is a paper by Amber Solomon et al from the Innovation and Technology in Computer Science Education (ITiCSE) conference is about reducing defensive and competitive (macho?) cultures in Computer Science  (via Mark Guzdials blog).

Modern learning theories emphasize the critical social aspect of learning. Computer science (CS) classrooms often have “defensive climates” that inhibit social learning and prevent the development of a community of learners. We believe that we can improve the social context of computer science learning by expanding CS learning beyond the single student in front of a display screen. Our theory is that the single student and single display inhibits collaboration and collaborative awareness of student work. In this paper, we present two case studies where we explored ways to make student work visible to peers. The first case study involved using a studio model for learning enabled by projection-based Augmented Reality (AR), and the second case study involves using a maker-oriented curriculum to make student work visible. Findings suggest the visibility of student work in CS classrooms helped support a community of learners: students collaborated, used each other as sources of inspiration, and felt more comfortable asking for help.

References and notes

*”You do not talk about Journal Club” is an adapted quote from the 1999 film Fight Club, see below. I’m only joking, you are of course welcome to talk to anyone who will listen about Journal Club.

Talking of David Malan, you can see his talk on making CS50 scale when he visited Manchester in 2017

June 23, 2017

Nine ideas for teaching Computing at School from the 2017 CAS conference

CAS

Delegates at the Computing at School conference 2017 #CASConf17 answering diagnostic questions, picture by Miles Berry.

The Computing At School (CAS) conference is an annual event for educators, mostly primary and secondary school teachers from the public and private sector in the UK. Now in its ninth year, it attracts over 300 delegates from across the UK and beyond to the University of Birmingham, see the brochure for details. One of the purposes of the conference is to give teachers new ideas to use in their classrooms to teach Computer Science and Computational Thinking. I went along for my first time (*blushes*) seeking ideas to use in an after school Code Club (ages 7-10) I’ve been running for a few years and also for approaches that undergraduate students in Computer Science (age 20+) at the University of Manchester could use in their final year Computer Science Education projects. So here are nine ideas (in random brain dump order) I’ll be putting to immediate use in clubs, classrooms, labs and lecture theatres:

  1. Linda Liukas demonstrated some intriguing ideas from her children’s books and HelloRuby.com that are based on Montessori education. I shall be trying some of these out (particularly the storytelling stuff) at code club to keep girls involved
  2. Sue Sentance and Neil Brown from King’s College London gave an overview of some current research in pedagogy.  They discussed research questions that can be tackled in the classroom like (for example) do learners make more progress using visual programming languages (like Scratch and Blockly) or traditional text-based languages (like Python and Java etc)? Many of these research questions would make good projects for undergraduate students to investigate in secondary schools, see research on frame based editors, for example.
  3. Michel Wermelinger from the Open University demonstrated using iPython notebooks for teaching data literacy at the Urban Data School. Although I’m familiar with iPython, it had never occurred to me to actually use iPython in school for teaching. It is a no-brainer, when you think about it, even for primary, because you have your code, inputs and outputs all in one window, and can step through code execution instead of (or as well as) using more conventional tools like Trinket, Thonny or IDLE. Data literacy is fun to teach.
  4. Miles Berry from the University of Roehampton demonstrated Diagnostic Questions in Project Quantum. These are a collection of high quality quizzes to use interactively for example as hinge questions, where teaching is adapted depending on answers given, like this multiple choice question:
    Consider the following Python code:
    
    a = 20
    b = 10
    a = b
    
    What are the values of a and b?
    
    A: a = 10, b = 10
    B: a = 20, b = 20
    C: a = 30, b = 10
    D: a = 10, b = 20
    

    You’ll have to try these five questions to check your answer. The useful thing here is that DiagnosticQuestions.com (the platform on which this is built) allows you to see lots of responses, for example each answer (A, B, C or D) above was selected by 25% of participants. You can also view explanations which illuminate common misconceptions (e.g. the classic mistake of confusing assignment with equality) as well as providing a bank of free questions for use in the classroom.

  5. Mark Guzdial from GeorgiaTech discussed using learning sciences to improve computing teaching. He demonstrated predictive questions (e.g. ask students What do you think will happen when we run this code? before actually executing it) alongside what he called subgoal labelling. These are simple ideas (with proven benefits) that can be put to use immediately. I’ll also be trying the Live Coding (with Sonic Pi) and Media Computation he demonstrated asap.
  6. Laurence Rogers demonstrated Insight: Mr. Bit  this looks like a good app for using BBC microbits in the classroom, connected to a range of sensors, provided you’ve got access to iPads.
  7. A copy of Hello World magazine was in the conference bag. The summer 2017 issue has an unusual article from Ian Benson from Kingston University and Jenny Cane describing their use of the Haskell programming language to teach 5-7 year olds to reason symbolically and learn algebra before arithmetic with help from Cuisenaire rods. The Scratch Maths project at University College London are doing similar things, building mathematical knowledge using Scratch, rather than Haskell. These are experimental ideas you could try out on unsuspecting (junior) family members.
  8. Lee Goss from Barefoot Computing, described the free CPD for primary school teachers on offer from BT. I’ve signed up and hope to plug some of the shortcomings in the Code Club Curriculum.
  9. Richard Jarvis demonstrated appJar, a handy Python library for teaching Graphical User Interfaces (GUIs). That’s Jar as in Jarvis and Jam, not JAR as in Java ARchive BTW. I’ve not tried GUIs at code club yet, but appJar looks like a good way to do it.

There were lots more people and projects at the conference not mentioned here including tonnes of workshops. If you’re interested in any of the above, the CAS conference will be back in 2018. Despite the challenging problems faced by Computer Science at GCSE level, it was reassuring and inspiring to meet some members of the vibrant, diverse and friendly community pushing the boundaries of computing in schools across the United Kingdom. Thanks again to everyone at CAS for putting on another great event, I will definitely consider attending next year and maybe you should too.

July 31, 2015

Wikipedia Science Conference @WellcomeTrust in London, September 2nd & 3rd 2015 #wikisci

There is growing interest in Wikipedia, Wikidata, Commons, and other Wikimedia projects as platforms for opening up the scientific process [1]. The first Wikipedia Science Conference will discuss activities in this area at the Wellcome Collection Conference Centre in London on the 2nd & 3rd September 2015. There will be keynote talks from Wendy Hall (@DameWendyDBE) and Peter Murray-Rust (@petermurrayrust) and many other presentations including:

  • Daniel Mietchen (@EvoMRI), National Institutes of Health: wikipedia and scholarly communication
  • Alex Bateman (@AlexBateman1), European Bioinformatics Institute: Using wikipedia to annotate scientific databases
  • Geoffrey Bilder (@GBilder), CrossRef, Using DOIs in wikipedia
  • Richard Pinch (@IMAMaths), Institute of Mathematics and its Applications. Wikimedia versus academia: a clash of cultures
  • Andy Mabbett (@PigsOnTheWing), Royal Society of Chemistry / ORCID. Wikipedia, Wikidata and more – How Can Scientists Help?
  • Darren Logan (@DarrenLogan), Wellcome Trust Sanger Institute, Using scientific databases to annotate wikipedia
  • Dario Taraborelli (@ReaderMeter), Wikimedia & Altmetrics, Citing as a public service
  • … and many more

I’ll be doing a talk on “Improving the troubled relationship between Scientists and Wikipedia” (see slides below) with help from John Byrne who has been a Wikipedian in Residence at the Royal Society and Cancer Research UK.

How much does finding out more about all this wiki-goodness cost? An absolute bargain at just £29 for two days – what’s not to like? Tickets are available on eventbrite, register now, while tickets are still available. 

References

  1. Misha Teplitskiy, Grace Lu, & Eamon Duede (2015). Amplifying the Impact of Open Access: Wikipedia and the Diffusion of
    Science Wikipedia Workshop at 9th International Conference on Web and Social Media (ICWSM), Oxford, UK arXiv: 1506.07608v1

July 3, 2015

Manchester Digital, Education & Digital Skills in 2015

deemind

#DeepDream manipulated image of the Creation of Adam, some rights reserved (CC-BY) by Kyle McDonald (@kcimc) on flickr

Manchester Digital a non-profit trade assocation of around 500 digital businesses in the north west of england. Every year they hold elections at their AGM for members of their council who serve for two years. It’s time for me to stand for re-election because my two years is up. Here’s a vote-for-me pitch in 100 words:

Digital skills are crucial to the success of Manchester Digital (MD) but many members of MD struggle to recruit employees with the skills their businesses need. Key questions for MD’s growing membership are how can the skills shortage be met, and what are the responsibilities of employers and educators in addressing the digital skills shortage? As a council member, I would reboot the education special interest group to report thoroughly on these issues at a strategic level. The report would provide an overview of what digital skills young people are likely to have aged 16, 18 and 21+ and what employers can do to bridge the gaps.

If you’re interested in finding out more about Manchester Digital, and hearing from diverse bunch of 18 candidates standing for 6 places on the council, come along to the MD AGM on Thursday 9th July at 5.30pm in Ziferblat (@ziferblatedgest) – where everything is free, except time.

References

  1. #DeepDream Inceptionism: Going Deeper into Neural Networks, Google Research blog
  2. #DeepDream – a code example for visualizing Neural Networks Google Research blog
  3. Britain faces ‘growing shortage’ of digital skills” Daily Telegraph
  4. A UK digital skills gap looms, The Guardian
  5. UK failing to address digital skills shortage, says Lords report, ComputerWeekly.com

January 20, 2015

What is effective teaching? The willing definition via Grant Campbell

teaching large classes

Teaching Large Classes: Discussion. Creative Commons BY-NC-SA image via Giulia Forsythe on Flickr @giuliaforsythe

(This post is part of a series about the New Academics Program (NAP), I’ll be using this blog to scribble notes about the NAP as I work my way through it.)

Ask ten different people what effective teaching is and you’ll get ten different answers. Here’s a handy definition (let’s call it the willing definition for now) from Grant Campbell, currently Professor of Chemical Engineering at the University of Huddersfield. The original source may possibly be from elsewhere. [1]

 “Effective teaching is inclining people to learn willingly what they would otherwise be disinclined to learn.”

So according to this definition, good teachers make you learn things you wouldn’t normally be interested in, or as campbell puts it Teaching easy interesting stuff is easy. Teaching difficult dull stuff is more of a challenge.

Is this definition useful?

This is an unusual definition, but is teaching easy interesting stuff always easy to do? Probably not. It’s also not always obvious to teachers (or students) how hard or easy things are going to be to learn. Appearances can be deceptive.

Imagine trying to teach somebody something they didn’t want to know or poorly understood. Like the Physicist Akram Khan @ProfAkramKhan, who has been trying to teach the novelist Will Self about Particle Physics, that’s hard (especially with a deliberately difficult student like Self) but the results are entertaining. Most students in higher education are considerably more willing than Self, and more motivated to work their way through the inevitable dull hard stuff that comes with every subject, so IMHO, effective teaching is about both the dull and the exciting.

References

  1. Diane Salter (2013) Cases on Quality Teaching Practices in Higher Education ISBN-13: 978-1466636613

December 22, 2014

Makey Christmas and a Hacky New Year!

Christmas lectures by Ben Nuttall

Christmas lectures 2014 by @Ben_Nuttall

Our homes are full of technology that we typically take for granted and understand little. Your average smartphone or tablet, for example, is a “black box”, that deliberately discourages modification by tinkering and hacking. This Christmas, Danielle George takes three technologies we routinely take for granted – the light bulb, the telephone and the motor – and shows you how to hack your home as part of the Royal Institution Christmas Lectures broadcast on BBC Four.

Lecture 1/3 The Light Bulb Moment: First broadcast Monday 29th December

Inspired by Geordie inventor Joseph Swan, Danielle attempts to play a computer game on the windows of a skyscraper using hundreds of light bulbs. Along the way, Danielle will show the next generation how to hack, adapt and transform the technologies found in the home to have fun and make a difference to the world.

This year’s Royal Institution Christmas Lectures have been inspired by the great inventors and the thousands of people playing with technology at their kitchen tables or tinkering in their garden sheds. When Joseph Swan demonstrated the first working light bulb in 1878 he could never have dreamed that in 2014 we’d be surrounded by super-bright LED screens and lights that could be controlled using mobile phones.

In this lecture, Danielle explains how these technologies work and show how they can be adapted to help you realise your own light bulb moments. She shows how to send wireless messages using a barbecue, control a firework display with your laptop and use a torch to browse the internet. (via richannel.org/the-light-bulb-moment)

Lecture 2/3 Making Contact: First broadcast Tuesday 30th December

Inspired by Alexander Graham Bell, Danielle attempts to beam a special guest into the theatre via hologram using the technology found in a mobile phone. Along the way, Danielle shows the next generation how to hack, adapt and transform the electronics found in the home to have fun and make a difference to the world.

This year’s Royal Institution Christmas Lectures have been inspired by the great inventors and the thousands of people playing with technology at their kitchen tables or tinkering in their garden sheds. When Scottish inventor Alexander Graham Bell demonstrated the first telephone in 1876, he could never have dreamed that in 2014 we’d all be carrying wire-free phones in our pockets and be able to video chat in crystal clear HD across the world.

In this lecture, Danielle explains how these technologies work and shows how they can be adapted to help keep you connected to the people around you. She shows how to control paintball guns with a webcam and turn your smartphone into a microscope, whilst also investigating a device that allows you to feel invisible objects in mid-air. (via richannel.org/making-contact)

Lecture 3/3 A New Revolution: First broadcast Wednesday 31st December

Inspired by the Royal Institution’s very own Michael Faraday, Danielle attempts to use simple motors to construct the world’s greatest robot orchestra. Along the way, Danielle shows the next generation how to hack, adapt and transform the electronics found in the home to have fun and make a difference to the world.

This year’s Royal Institution Christmas Lectures have been inspired by the great inventors and the thousands of people playing with technology at their kitchen tables or tinkering in their garden sheds. When Michael Faraday demonstrated the first electric motor in 1822, he could never have dreamed that in 2014 we’d be surrounded by mechanical devices capable of performing nearly every human task.

In this lecture, Danielle explains how these robotic and motor-driven appliances work and shows how they can adapted to help you kick-start a technological revolution. She shows how to turn a washing machine into a wind turbine, how Lego can solve a Rubik’s Cube and how the next Mars rover will traverse an alien world. (via richannel.org/a-new-revolution)

If you miss the television broadcasts, the lectures will also be available on BBC iPlayer for 30 days then at richannel.org/christmas-lectures.

This will (probably) be the last post of the year at O’Really, so if you’ve visited, thanks for reading during 2014. Wherever you are, whatever you’re up to, have a Very Makey Christmas and a Hacky New Year in 2015.

2014 vs. 1964: Numbers speak louder than words

It’s that time of year when people look back at over the year that was 2014 (1-5). The place where I work, celebrated it’s 50th anniversary. Colleagues put together a little booklet of facts and figures with an some accompanying web pages to mark the occasion. My personal favourite factoid compares computing in 2014 with 1964. The Atlas Computer represented the state of the art in computing in 1964, and today that crown is held by SpiNNaker – a very different kind of computer.

fifty years of computing

50 years of computing (and pipe-smoking is lesson common around computers)

Sometimes, numbers speak louder than words, so here is a numerical comparison of Atlas (1964) with SpiNNaker (2014):

Feature (see this) Atlas Computer (1964) SpiNNaker (2014)
Size A very large room 19 millimetres square
Transistors 60,000 1,100,000,000
Instructions per second 700,000 3,600,00,000

One way of looking at this data is to say, based on the the instructions per second, SpiNNaker is around ~5000 times faster than Atlas. But what is probably more interesting is that SpiNNaker (which is due for completion in 2015) is expected to be used by neuroscientists and psychologists, as a platform to study problems such as Alzheimer’s disease – something that would have been impossible (and unthinkable) only fifty years ago [6,7]. Wonder where the next 50 years will take us in 2064?

References

  1. Anon (2014). The most-read Nature news stories of 2014 Nature DOI: 10.1038/nature.2014.16550
  2. Morello, L., Abbott, A., Butler, D., Callaway, E., Cyranoski, D., Reardon, S., Schiermeier, Q., & Witze, A. (2014). 365 days: 2014 in science Nature, 516 (7531), 300-303 DOI: 10.1038/516300a
  3. Anon (2014). 365 days: Nature’s 10, Ten people who mattered this year. Nature, 516 (7531), 311-319 DOI: 10.1038/516311a
  4. Katherine Maher (2014) What did the world make 100 million edits of in 2014? Wikimedia blog
  5. Hand, E. (2014). Comet Breakthrough of the Year + People’s choice Science, 346 (6216), 1442-1443 DOI: 10.1126/science.346.6216.1442
  6. Furber, S., Galluppi, F., Temple, S., & Plana, L. (2014). The SpiNNaker Project Proceedings of the IEEE, 102 (5), 652-665 DOI: 10.1109/JPROC.2014.2304638

October 23, 2014

Two big challenges facing the technology & digital industries (IMHO)

Digital Turing

Alan Turing Binary code, Shoreditch High Street, London by Chris Beckett on Flickr (CC-BY-NC-ND license)

Over at democracy corner, Manchester Digital is interviewing all of its elected council members. Somehow, I got volunteered to be first interviewee. Here’s my two pence on one of the questions asked: “What do you think is biggest challenge we face as an industry?” (with some extra links)

  • Firstly, coding and “computational thinking” [1], needs to be understood as something that isn’t just for developers, geeks, coders, techies, boffins or “whizz kids” – as the Manchester Evening News likes to call them. Computational thinking, the ability to understand problems and provide innovative solutions in software and hardware, is a fundamental skill that everyone can learn, starting in primary school. As well as being fun to learn and practice, it is a crucial skill in a wide range of organisations in digital and beyond. Thankfully, the new computing curriculum in UK schools has recognised and addressed this, but it remains to be seen what the long-term impact of the changes in primary & secondary education will be on employers.
  • Secondly, as an industry, both the digital and technology sectors are seriously hindered by gender imbalance. If only 10-20% of employees are female, then large numbers of talented people are being excluded from the sector – bad news for everyone.

Is that reasonable –  or have I missed the point? Are there more pressing issues facing the technology sector? Either way, you can read the rest of the interview at manchesterdigital.com/democracy-corner which will be supplemented with more interviews of council members every week over the next few months.

References

  1. Wing, J. (2008). Computational thinking and thinking about computing Philosophical Transactions of the Royal Society A: Mathematical, Physical and Engineering Sciences, 366 (1881), 3717-3725 DOI: 10.1098/rsta.2008.0118

July 3, 2013

Manchester Digital and Higher Education in 2013

xkcd good code

Writing good code is often harder than it looks via Randall Munroe at xkcd.com

Manchester Digital is the independent trade association for the thriving digital sector in the North West of England. Last night they held their AGM and elections for new members of their council. I was encouraged to stand for election, and alongside 19 other candidates, had to give a two-minute  “manifesto” in a hustinglightning-talk format. Here’s roughly what I said, from the perspective of software, hardware and developers, with some added links and a bit more polish:

The success of Manchester’s Digital economy is dependent on educating, recruiting and training a pool of talented developers to work in the region. As identified in the Manchester Digital skills audit, developers are often the hardest roles to fill, as many graduates and potential employees are drawn to other high-tech hubs like London, Silicon Fen and Silicon Valley, California for employment.

Addressing this issue is an important for Manchester Digital and requires closer collaboration between Higher education, Secondary education and employers. As a tutor at the University of Manchester, with responsibility for managing internships for students in Computer Science I am in a strong position to enable more collaboration between educators and employers. As a council member I would do this in four ways:

  1. Encouraging students to consider employment in Manchester as their first job, by promoting internships and graduate vacancies with local organisations alongside traditional graduate programmes at larger multinational companies
  2. Listening to what employers in Manchester want so that students can be better prepared for the workplace, while balancing the competing needs of training and education.
  3. Challenging local employers to raise their game to compete with larger employers and attract graduates to work for their organisations
  4. Inspiring the next generation of scientists and engineers by extending current work with schools and supporting undergraduate students doing outreach work involving Science, Technology, Engineering and Mathematics (STEM). For example: through the STEMnet ambassador programme, Code Club, Animation FestivalTeenTech and related work.

These are key activities that will enable the continued success of Manchester’s Digital Economy and I ask Manchester Digital members to vote for me if they agree. Thank you!

Whatever the outcome, the AGM & hustings were great fun and it was good to catchup with old friends and meet some new people too. Hope to see some of you again the Manchester Digital BBQ on 11th July…

June 18, 2013

Peter Suber’s Open Access book is now freely available under an open-access license

Peter Suber's Open Access book

Open Access by Peter Suber is now open access

If you never got around to buying Peter Suber’s book about Open Access (OA) publishing [1] “for busy people”, you might be pleased to learn that it’s now freely available under an open-access license.

One year after being published in dead-tree format, you can now get the whole digital book for free. There’s not much point writing yet another review of it [1], see Peter’s extensive collection of reviews at cyber.law.harvard.edu. The book succinctly covers:

  1. What Is Open Access? (and what it is not)
  2. Motivation: OA as solving problems and seizing opportunities
  3. Varieties: Green and Gold, Gratis versus libre 
  4. Policies: Funding mandates (NIH, Wellcome Trust etc)
  5. Scope: Pre-prints and post-prints
  6. Copyright: … or Copyfight?
  7. Economics: Who pays the bills? Publication fees, toll-access paywalls and “author pays”
  8. Casualties: “OA doesn’t threaten publishing; it only threatens existing publishers who do not adapt”
  9. Future: Where next?
  10. Self-Help: DIY publishing

Open Access for MACHINES!

A lot of the (often heated) debate about Open Access misses an important point about open access being for machines as well as humans, or as Suber puts in Chapter 5 on Scope:

We also want access for machines. I don’t mean the futuristic altruism in which kindly humans want to help curious machines answer their own questions. I mean something more selfish. We’re well into the era in which serious research is mediated by sophisticated software. If our machines don’t have access, then we don’t have access. Moreover, if we can’t get access for our machines, then we lose a momentous opportunity to enhance access with processing.

Think about the size of the body of literature to which you have access, online and off. Now think realistically about the subset to which you’d have practical access if you couldn’t use search engines, or if search engines couldn’t index the literature you needed.

Information overload didn’t start with the internet. The internet does vastly increase the volume of work to which we have access, but at the same time it vastly increases our ability to find what we need. We zero in on the pieces that deserve our limited time with the aid of powerful software, or more precisely, powerful software with access. Software helps us learn what exists, what’s new, what’s relevant, what others find relevant, and what others are saying about it. Without these tools, we couldn’t cope with information overload. Or we’d have to redefine “coping” as artificially reducing the range of work we are allowed to consider, investigate, read, or retrieve.

It’s refreshing to see someone making these points that are often ignored, forgotten or missed out of the public debate about Open Access. The book is available in various digital flavours including:

References

  1. Suber, Peter. Open Access (MIT Press Essential Knowledge, The MIT Press, 2012). ISBN:0262517639
  2. Clair, Kevin. (2013). Kevin Michael Clair reviews Open Access by Peter Suber The Journal of Academic Librarianship, 39 (1) DOI: 10.1016/j.acalib.2012.11.017
Next Page »

Blog at WordPress.com.