The role of Constructivism in teaching Data Science for Internet of Things

The role of Constructivism in teaching Data Science

 

Constructivism, Data Science and Online Learning

I enjoy teaching.  I teach at University level (Oxford and UPM – Madrid). I also teach young people the principles of Computer Science using Space technology using a live Satellite in collaboration with Ardusat. Over the last decade, education itself has changed with more emphasis on Online education. This allows us (as teachers/tutors) the opportunity to explore new modes of  learning.  However, the principles of learning have not changed. I believe, in many ways, we now need to come back to the more traditional/timeless principles of teaching in a Digital world

This document explains the learning philosophy and the principles underpinning the Data Science for Internet of Things course. Specifically, it discusses a learning technique called Constructivism which I have been exploring for the teaching  of complex topics like Data Science for IoT. I  am thankful to Jean Jacques Barnard (a participant in the course) for his comments and feedback to this post.

Constructivism (constructivist learning philosophy) is based on learning mechanisms in which knowledge is internalized by learners through processes of accommodation and assimilation. The learner has an internal representation of a concept. They then encounter new ideas and concepts. These ideas and concepts are assimilated through learning. In doing so, they may incorporate new experiences into the existing framework. Alternately, if they find that the new experience contradicts their existing framework – they may evolve their internal representation or change their perception.  Thus, learning is an ongoing process of concept assimilation. We incorporate constructivist ideas into the course content, Projects and the methodology. Here are the implications and findings of this approach.

To summarize

a)   To acquire new knowledge in complex domains, the context is important. Specifically, the starting point of the Learner.

b)   New concepts and ideas have hierarchical dependencies and also lateral connections. These need to be incorporated into the learning process

c) The process is slow and personalized. It is not possible to use this approach in a mass/massive mode

d)  The Physical context matters. But Projects need to be seen in the wider context. Projects and Methodology go together. Projects provide the Physical context. The methodology provides the panoramic view to the problem in context of the Big Picture

e)  There is a broad structure to acquiring knowledge but not a fixed path

 

 

1)    Greater learning agility and flexibility

When I first met course participant Priscila Grison a few years ago in San Francisco, she mentioned an interesting Spanish language book by Julio Cortazar called Rayuela(in English Hopscotch). The author has a unique structure for the book. An author’s note suggests that the book would best be read in one of two possible ways, either progressively from chapters 1 to 56 or by “hopscotching” through the entire set of 155 chapters according to a “Table of Instructions” designated by the author. Cortázar also leaves the reader the option of choosing a unique path through the narrative.

I find this idea fascinating i.e. that the author should create one structure but the reader could assimilate it in more than one way. Why could that not be true of Online Education also? The ‘Educo’ in ‘Education’ is to draw from within. Online learning offers us that unique ability to learn from within – a concept now becoming more common through ideas like ‘Learning agility’ i.e. an individual must the ability to learn, adapt, and apply in quick cycles. By using the constructivist philosophy, we incorporate a ‘structure’ a linear flow of modules but also an ‘unstructure’ through various means – such as Personal learning plans, choice of programming languages etc. This leads to greater learning agility.

 

2)    Implications for Projects in a constructivist sense

Projects are the core of our course – but we use the idea of Projects in a wider learning context. The key idea in constructivism is: The starting point is familiar to the learner. Hence, we spend a lot of  time in the first few months trying to understand the learner’s current state of understanding. After this, the next phase is spent on the core modules which correlates new ideas to the existing understanding thereby building on existing concepts. In turn, these are further expanded in the  project.  The project itself is contrasted against a methodology Creating an Open methodology for Internet of Things – IoT analytics and Data Science (created by me, Jean Jacques and another course participant Shiva Soleimani) which shows the learner how their knowledge fits into the wider context of the problem.

 

3) Acquiring new and complex skills

Constructivism is very suited to acquiring new and complex skills because new knowledge is both hierarchical and also laterally related. For example, PCA  needs understanding of Eigenvalues .. which in turn is based on Matrix multiplication. Similarly, many concepts in Python and R are related(lateral co-relation of new concepts)

 

4) Not Massive (Not a MOOC)

The strategy of Constructivism will not scale – because it needs greater direct engagement with the participants. That may be for the good!  I have never heard a teacher use the word ‘Massive’ in context of teaching.  VCs use ‘Massive’ for MooCs  i.e. Massive Open Online Courses – but then again VCs have been known to search for mythical beasts like Unicorns.  If you really think about it – the word Massive is associated with teaching only as a Business model.  We do not believe that ‘Massive’ helps teaching because it is really not possible to give attention in the massive model

5) Not Free but Affordable

An education system based on Constructivism will be not free but affordable. To create a large/Massive system we need a free service – with minimal personal engagement.  In contrast, everyone remembers from their childhood at least one teacher who took an extra interest in their work. Such personal attention is not possible on a large scale. Instead of free – a more affordable model is possible. Such models are not  likely to be funded by traditional VCs. But, they could be still be viable and niche institutions.

 

In industry – the analogy would be the German concept of Mittelstand companies (common in Germany, Austria and Switzerland) . Mittelstand companies have no real equivalence outside of Germany. It would be wrong to call them an SME (Small to medium enterprise) because they operate on a specific ethos  which includes qualities such as: Long-term focus, Independence, Emotional attachment to the business, Investment into the workforce, Flexibility, Lean hierarchies, Innovation, technical excellence, craftsmanship, Social responsibility etc.  The point here is: It is possible to create a viable venture on the Web which serves a niche customer base – taking a long term view.  This model is not so common – but is still very achievable.  That’s our aspiration.

6) Community and personalization

This strategy makes us rethink the word ‘community’. Everyone on the Web likes to think of themselves as a ‘community’. But this is yet another word that has morphed into a different meaning in a commercial context. Take the case of LinkedIn. Is LinkedIn a ‘community’? Or more many people trying to sell things to others(with very little in common other than that function).  On the Web – communities reduce to forums where involvement of the tutor is minimised.  But with a smaller group, it is possible to have calls/ meetings etc.  So, we encourage lots more communication between the tutor and the participant i.e. actually speaking/Skype calls etc. Again, you cannot do this on a mass scale.

To Conclude ..

To summarize

a)   To acquire new knowledge in complex domains, the context is important. Specifically, the starting point of the Learner.

b)   New concepts and ideas have hierarchical dependencies and also lateral connections. These need to be incorporated into the learning process

c) The process is slow and personalized. It is not possible to use this approach in a mass/massive mode

d)  The Physical context matters. But Projects need to be seen in the wider context. Projects and Methodology go together. Projects provide the Physical context. The methodology provides the panoramic view to the problem in context of the Big Picture

e)  There is a broad structure to acquiring knowledge but not a fixed path

To conclude, all this sounds less like training but more like going back to the first Principles of Teaching or even Coaching for complex topics such as Data Science for IoT. Going back to timeless values(even when they don’t quite scale!) may well be called for in the next generation. Dr Hessa Al Jaber ex Minister of ICT for Qatar (with whom I was honoured to work with at the World Economic Forum) says in an insightful  post Why my daughter’s generation faces challenges mine didn’t   In the midst of this digital age, and global connectivity fueling all of these conflicting ideas, her generation might start to feel lost.  Values that seemed immutable have begun to shift.

I  welcome comments (ajit.jaokar at futuretext.com ). I believe this is a new approach – and it’s a learning experience for us all!

Image:  Jean Piaget – the founder of Constructivism – source – Wikipedia

MWC 2016: 3 developments to watch which impact IoT analytics Introduction

I have attended the Mobile World Congress for the last 7 years (5 of them as a speaker/panellist).

This year, I did not go. Partly, this is reflective of my change in business focus (to Data Science for Internet of Things course) .

But, also I believe that today, MWC does not reflect disruptive innovation.  The show has more than 100,000 participants but we do not see fundamental game-changing innovations likeDeepmind – Go from Google last week.

Thus, in keeping with my current focus, this blog highlights developments to watch from MWC 2016 which impact IoT analytics. From an IoT / IoT analytics standpoint – the Telecoms industry would only play a major role with  5G(beyond 2020) ex see The rise of 5G: the network for the Internet of Things  and The plans for 5g to power the Internet of Things

Before I list the areas that impact IoT analytics, here is some background. These factors have remained the same for most of the Mobile Data Industry’s lifetime

a)      Telecoms Operators only make money when Data passes through the Cellular network. That is not always the case(ex WiFi, Bluetooth etc).

b)      Telecom Operator business models are  not suited to selling other types of products(ex to Enterprise)

c)       The interface to the customer, once so prized, is now gone to Web and Social media players like Facebook

d)      Telecoms have a long history of successful engineering led standards. But these standards have not been successful at higher layers of the stack. So, again we see many players unite to launch One M2M – but the history of Telecoms standards is poor

e)      Device vendors like Samsung, Apple etc are more successful with innovation but are take an independent approach as best they can

f)       Even when Data passes through the Telecoms network, the Operator may not be able to monetize it for legal reasons(ex just because an Operator knows your location, they do not have the permission to sell you advertising)

Having said that, from an IoT Analytics standpoint, there are some areas which impact IoT data(hence IoT analytics) which are unique to Telecoms. This blog discusses three such developments which I am tracking

 

Analysis and Focus areas

1) LPWA battles

low power wide area networks are a key battleground for the industry at the moment. With the arrival of 5G years away(including 5G devices) is years away, the main players today are Sigfox and LoRa. The Operators have been forced to push LTE-M in a hurry (see Lora vs LTE vs Sigfox). The momentum is certainly with LoRa and Sigfox.

 

2) Platforms

There is no shortage of IoT based platforms including Telecoms oriented platforms like Jasper(now acquired by Cisco).  However, we will see maturity in Platforms and new partnerships. Here are three developments

Analytics platforms spanning multiple network types: Platforms ItalTel launches solutions for healthcare and Infrastructure – this is an example of a more mature platform supporting multiple network types(Sigfox and LoRa ) and even WebRTC. The platform claims to have analytics built into it.

Open Source IoT analytics platforms like Kaa IoT who were at the show and who I am following with interest

Ericsson – Amazon Cloud Deal – A deal which combines the IoT cloud PAAS vendors with the Telecoms network providers.

3) e-SIM

And finally, the eSim. I have been following the work of companies like Gemalto for a while who have long advocated the eSim technology. Today, in the age of IoT, its a technology whose time has come.

The embedded SIM (also called eSIM or eUICC) is a new secure element designed to remotely manage multiple mobile network operator subscriptions and compliant with GSMA specifications

eSim could help customers to set up and manage subscriptions on devices remotely via a single embedded SIM (eSIM) in a process which will be a lot cheaper, easier and faster without sacrificing any levels of security. There were a few key eSim announcements such as Gemalto with Jasper wireless  and also Sierra wireless and valeo on telematics

 

Conclusions

IoT analytics (Data Science for IoT) is still a nascent field and Telecoms will be a key enabler for IoT. I see the initial impact around areas like Security, LPWA and Platforms which facilitate analytics for IoT. If you want to see more of my work, please see Data Science for Internet of Things course

Book review : Big Data Analytics with Spark A Practitioner’s Guide to Using Spark for Large Scale Data Analysis By Mohammed Guller

Book review : Big Data Analytics with Spark A Practitioner’s Guide to Using Spark for Large Scale Data Analysis I have been reading and reviewing a number of excellent books for the Data Science for IoT course  and also my Oxford University course. Big Data Analytics with Spark  By Mohammed Guller is for data scientists, business analysts, data architects, and data analysts looking for a better and faster tool for large-scale data analysis. It is also for software engineers and developers building Big Data products. The book covers a subject which I have been focussing on through my teaching and research. It provides a  step-by-step guide for learning how to use Spark for different types of big-data analytics projects, including batch, interactive, graph, and stream data analysis as well as machine learning. The book covers Spark core and its add-on libraries, including Spark SQL, Spark Streaming, GraphX, MLlib, and Spark ML. My analysis: The book covers Mllib, Scala, Spark and Analytics in detail but it is also readable. It also covers Code for all these sections. The only recommendations I would make are: A better index and releasing code in Github. However, the book pdf can be bought for an extra $5(so you can copy and paste the code if you need it) I see the book comprising three sections: a)      The main theme of the book i.e. Big Data Analytics with Spark b)      The first five chapters leading up to the theme c)       The last three chapters on Spark deployment The main theme of the book i.e. Big Data Analytics with Spark

  • Chapter 6: Spark Streaming (23 pages):  Introduce Spark streaming and show an example app using Spark streaming includes Spark streaming introduction, How Spark streaming works and A spark streaming example app.
  • Chapter 7: Spark SQL and Dataframes (50 pages): Introduce Spark SQL along with a few examples
  • Chapter 8: MLlib and SparkML (50 pages): Introduce machine learning and MLlib along with a few examples covers Machine learning introduction, Linear regression, Logistic regression, Classification, Clustering, Recommender system. Building a machine learning application with MLlib, MLBase
  • Chapter 9(23 pages): GraphX   Introduce Graph analysis and GraphX along with a few examples

The first five chapters leading up to the theme

  • Chapter 1: Big Data Technology Landscape :  Cluster computing(Hadoop MapReduce, HDFS, Hive), Data serialization( Avro, Proto Buffer), Columnar storage (Parquet), Messaging system (Kafka, ZeroMQ), NoSQL databases (HBase, Cassandra), Distributed SQL Query engine (Apache Drill, Impala, PrestoDB)
  • Chapter 2: Functional Programming in Scala (30 pages)  Introduce Scala so that readers can understand and write Spark applications in Scala, which is the primary language supported by Spark. This includes Key functional programming concepts including Basic Scala constructs, Scala Shell etc
  • Chapter 3: Spark’s Essentials (35 pages):  Introduce Spark fundamentals and key concepts

What is Spark, Why Spark is hot, Why Spark is faster than Hadoop MapReduce, Resilient Distributed Datasets (RDD)

  • Chapter 4: Spark Shell (10 pages): Introduce Spark Shell and show how it can be used for interactive data analysis, Spark shell introduction, Interactive data analysis in Spark-shell
  • Chapter 5: A Stand-alone Spark Application (10 pages):  Provide step-by-step directions for writing and running a Spark application. Basic structure of a stand-alone Spark application, Compiling a Spark application

The last three chapters (Deployment Chapters)

  • Chapter 10: Deploying Spark – a walkthrough of Spark deployment with different cluster management technologies such as YARN, Mesos, and services like AWS (EC2)
  • Chapter 11: Monitoring a Spark Cluster (20 pages)

Overall, I very much recommend this book. Big Data Analytics with Spark A Practitioner’s Guide to Using Spark for Large Scale Data Analysis By Mohammed Guller I also plan to use this book in the Data Science for IoT course  and also my Oxford University course which I will teach later in the year.