Managing Complexity

Managing Complexity In Your Head

Finding it hard to understand a complex phenomenon?

How do you manage complexity in your head?

1. Visualization / Imagination

Imagination by Katrina Kaif

 

‘The true sign of intelligence is not knowledge but imagination’ – Imagination by Katrina Kaif

Language and words are discrete. Visualize, so you see ‘all’, ‘the whole’ at once.

  • Organization
  • Connected Structure – how parts are connected to form the whole; what happens when a part is changed.
  • Chunking

2. Abstraction

Create Abstractions to help you see whole in terms of abstract concepts, when it’s hard to see ‘whole’ at once.

  • Visualization is usually top-down; creating abstractions can be done both bottom-up and top-down.
  • Recursive definitions are one type of abstraction.
  • Naming.
  • Concept borrowed from Computer Science; applicable across disciplines.

3. Generalization

14724563_1788317928112078_2697529884478836366_n

 

‘Have a good day , and a great week , and just a wonderful life in general ! ‘ – Generalization by Katrina Kaif

Abstract classes and classes of behaviors into Generalizations.

Science is all about discovering generalizations.

4. Systems Thinking

Divide the whole into systems and the systems into sub-systems and their interactions – Systems Thinking.

5. Knowledge Ontology

Organize generalizations into Knowledge Ontology.

Move up and down between Multiple Levels Of Abstractions.

Concept borrowed from Artificial Intelligence (AI).

6. Point of View / Perspective

16641067_1843139239296613_5681191096692787784_n

Perspective by Katrina Kaif

Find new Points of view from which to look at the domain under consideration (examples include how American Physicist Richard Feynman found new way of looking at interactions between light and matter which helped him discard infinities and formulate QED).

 

16299489_1838457319764805_5693086054311300362_n

 

‘Seeing the world through different glasses’ – Point of view, zooming in and out by Katrina Kaif

  • Understand part (representative element / elements) to understand the whole – Part – Whole.
  • Lens tool – “zoom in” and “zoom out”.

 

 

 

 

14714958_1790952407848630_8243309853551691027_o

 

‘If plan A didn’t work stay cool, the Alphabet has 25 more letters’ – Google Alphabet by Katrina Kaif

  • Problem – Sub-problem
    • Examples
      • Recursion
      • Dynamic Programming
      • Mathematical Induction

 

  • Individual Element – Whole 
    • Examples
      • Matrix Multiplication: individual element = respective row * column
      • Proof of Inclusion Exclusion Principle.
      • Coloring Principle (Problem Solving Heuristic)
      • Telescoping Tool (Mathematical Problem Solving; Series Summation)
  • Local Behavior – Global Behavior
    • Invariance Principle (Problem Solving Heuristic)
      • Change in individual states – Invariant Global function.
    • Iteration in Computing
      • Thinking in terms of change in state in an iteration.

14712486_1786815188262352_863380145563592690_o

 

At the end of the day: ‘Hold on, I’ve gotta overthink about it!’ – Managing complexity by Katrina Kaif

Personal Notes On Studying & Learning [Unofficial]

  • Real world Bookish knowledge
  • Get emotionally involved. Be passionately curious.
  • Learn in context. Always have past, future, goals, contexts, questions in mind.
  • Learning and understanding by developing models, knowledge ontologies, organized knowledge in context (e.g., understanding how a tool works in context of the problem it tries to solve).
  • Study the problem, not the tool. Design the best possible tool that solves the problem; and then study the available tool.
  • Study science of Engineering.
  • It’s not just “so this is how it works” but it’s also “how different could it be” (especially in engineering)?
  • As you continue building models, ask questions. Then study-think to find out the answers.
  • If you have very little knowledge about the subject matter, then first skim through to have a glimpse / overview of the subject matter, start building model, ask questions and find answers to fill gaps in your knowledge of the model.
  • Apply what you have learned. Solve problems, work on projects, teach someone.
  • “The most effective learning requires a well-defined task with an appropriate difficulty level for the particular individual, informative feedback, and opportunities for repetition and corrections of errors.” – Peter Norvig. “The key is deliberative practice: not just doing it again and again, but challenging yourself with a task that is just beyond your current ability, trying it, analyzing your performance while and after doing it, and correcting any mistakes. Then repeat. And repeat again.” – Peter Norvig. [1]
  • Clock. Compete with yourself. Speed up the learning process.
  • Find out how the discoverer / inventor discovered / invented the theory / knowledge / concept / tool.
  • Understand the newly learned concepts “completely and clearly” in terms of what you already know. (Whatever you teach someone is not completely internally absorbed by him / her until he/she understands it in terms of what he/she already knows. A teacher should make sure that the student can describe whatever he/she has learned in his/her own words / ways.)
  • Organize your Models in your Knowledge Ontology.
  • Teach whatever you learn to someone or at least learn as though you have to teach it to someone smart.
    • Professor Anant Agarwal [2] mentioned that, one truly starts learning only when he has to teach.   



Tools

  • Systems thinking
  • Zooming-in, zooming-out (let’s name it the “lens tool”)
  • Find out how changes made to “part” bring about change in the “whole”.
  • Move up and down between different levels of abstractions. Breakthrough idea could be at any level. (Creativity, Problem Solving)
  • Understanding systems and processes “completely” in terms of what I already know (what Physicists try to do)
  • Ask Questions. (Fill up gaps in knowledge. Meta-thinking. Questions lead to answers and new knowledge.)
  • Abstractions (from computational thinking)
  • Generalization
  • Chunking

Studying – Learning

  • পড়ার সময় তাত্ত্বিক ব্যাপারগুলো Concrete example/ Application কল্পনা করে পড়ো। (Equivalent to doing science labs/practical) 
  • Whatever you are studying, build a model of what you already know. Then, as you learn more, place the newly learned concepts, processes in their appropriate position in the model. Ask questions, find out answers and fill the gaps in the model. Whatever you learn place it in “a single model”. Models of different things are connected (graph, hierarchical tree). 
  • Use visualization while you are studying. + Concrete example in real world context.
  • Get emotionally involved. Be passionately curious.
  • পড়ার আগে বিষয়টা সম্পর্কে কি কি এখনই জানো, কি কি জানতে চাও – ভেবে নাও। তারপর Curiosity নিয়ে পড়।
  • First imagine what happens in the real world. – Extract general principles/structures. – This is your own model. Then learn from learning materials. Integrate the newly learned concepts in your own model. Can you think of anything better than what is there in the learning materials? Ask questions – fill in the gaps of your knowledge/model. 
  • Understand the newly learned concepts “completely and clearly” in terms of what you already know. (Whatever you teach someone is not completely internally absorbed until he/she understands it in terms of what he/she already knows. A teacher should make sure that the student can describe whatever he/she has learned in his/her own words / ways.)
  • Teach whatever you learn to someone or at least learn as though you have to teach it to someone smart.
  • Be open-minded. Be prepared to accept completely new knowledge, new reality and revise what you already know / what is generally known. Don’t constrain yourself with knowledge you have gathered and theories you have learned thus far. People with knowledge/experience in a domain are usually reluctant to accept new knowledge outside their own models / common sense. One practice is to keep learning new things in new subject areas – that way you are prepared for surprises.
  • Start with deep level of concentration: meditation/deep breathing, solve problems.
  • As you continue building models, ask questions. Then study-think to find out the answers.
  • If you have very little knowledge about the subject matter, then first skim through to have a glimpse / overview of the subject matter, start building model, ask questions and find answers to fill gaps in your knowledge of the model.
  • Apply what you learn. (Solve problems, work on projects, teach someone.) “The most effective learning requires a well-defined task with an appropriate difficulty level for the particular individual, informative feedback, and opportunities for repetition and corrections of errors.” “The key is deliberative practice: not just doing it again and again, but challenging yourself with a task that is just beyond your current ability, trying it, analyzing your performance while and after doing it, and correcting any mistakes. Then repeat. And repeat again.” – Peter Norvig.
  • If you can understand and explain everything in terms of very few concepts and principles and structures-processes, then you can do a lot with “little knowledge”. (model: Physics)
  • Clock. Compete with yourself. Speed up the learning process.
  • It’s not just “so this is how it works” but it’s also “how different could it be” (especially in engineering)?
  • Better models?
  • Don’t start reading without any questions, curiosity in mind. Be curious about a topic, build a (possibly incomplete) model, have some questions in mind and then start reading. Always check if you have a model and some questions in mind while you are learning. Learn in context of the questions / incompleteness in your models.
  • Real world Bookish knowledge
  • Understanding a topic / problem / solution involves a lot of zooming in (for understanding the details) and zooming out (for having an overall idea). You must be comfortable at accessing all levels of details. Associate images, processes with concepts / methods / algorithms. Check your concentration level by finding out whether you can zoom in and zoom out with ease.
  • Find out how the discoverer / inventor discovered / invented the theory / knowledge / concept / tool.
References

Learning Everything There Is To Know In A Subject Area

Learning Everything There Is To Know In A Subject Area

What I do is think and organize “All possible forms of knowledge” in a particular area. I call this forming “Ontology” – Organization of Knowledge.

I learn by thinking.

I think in pictures. I employ Logic and Mathematics.

I find patterns and draw generalizations.

I organize the generalizations in an Ontology.

I consult books and Web only when I have a question.

Suppose, I am learning about Robot Manipulators.

I try to figure out “all of the possible forms of Manipulators” that a Robot might have. I think like a Physicist (Remember, Science is all about generalizations found in Nature.) and figure out “all of the possible forms of Manipulators” that a Robot might have.

I organize all of the possible forms of Manipulators in my own Ontology of Robotics.

Or suppose, I am learning Microeconomics. 


I skim through a book and find out the main concepts.
Think what happens in the world in general.
Organize everything in “A Picture”.  

Microeconomics in a Nutshell

I learned this method 

  • partly from Physics and 
  • partly from Artificial Intelligence. 


Physics tries to explain everything there is in this Universe in terms of a few fundamental laws.

But there are quite a few laws and it can be hard to see all the laws at once. Thinking in pictures and organizing in ontologies help me “see all at once”. I learned building Ontologies from Artificial Intelligence.

That’s – in brief – how I learn everything there is to know in a subject area.

প্রিন্সেস শামিতা তাহসিনকে লেখা চিঠি – ৮

শেখার সবচেয়ে সেরা উপায় 

অ্যাই!

আজকে একটা ইন্ট্রেস্টিং ব্যাপার!

নতুন কিছু শেখার সবচেয়ে সেরা উপায়টা জানতে চাও?

ধর, প্রোগ্রামিং এ ভাল হতে চাইছ।

তুমি তো বেসিকস জানোই।

সবচেয়ে সেরা উপায়ে শিখতে চাইলে তুমি যা করবে তা হচ্ছে – অবশ্যই বই বা ওয়েবসাইট খুলে বসবে “না”!

হুম, ঠিকই পড়েছ – বই বা ওয়েবসাইট খুলে বসবে “না”!

তাহলে?

তোমার ব্রেইনটা আছে কি জন্য?

ওটা হেলায় ফেলে রাখবে?

তুমি শিখবে “চিন্তা” করে!

প্রোগ্রামিং নিয়ে যা জানো মাথায় গোছানোর চেষ্টা কর – যা ভাবছ তা লিখে রাখো। ভাবতে ভাবতে এমন কিছু কি পেয়েছ যা জানো না? ওটা বই পড়ে বা Google করে শিখে নাও। এভাবে ভাবলে তোমার জ্ঞানে কোথায় শুন্যস্থান আছে বুঝবে – শুন্যস্থান পূরণ করেও নিতে পারবে। নতুন নতুন প্রশ্ন তৈরি কর – প্রশ্নগুলোর উত্তর খুঁজে নিতে বই পড় বা Google কর। 

শুধু বই পড়লে সামগ্রিক একটা ধারণা তৈরি হয় না। তুমি যে প্যারাটা পড়ছ – শুধু ওটুকুই তোমার মাথায় থাকে। শেখা বাকি জ্ঞানের সাথে প্যারাটার কোন সম্পর্ক থাকে না।

ধর, তুমি লুপিং নিয়ে পড়ছ। প্যারা হিসেবে পড়লে তুমি শিখবে C তে কিভাবে for loop লিখতে হয়। কিন্তু প্রোগ্রামিং করার সময় লুপিং কখন কাজে লাগে তা বুঝবে না। C এর নানা রকম প্রোগ্রামিং কন্সট্রাক্ট এর মাঝে লুপিং কোথায় – বুঝবে না।

বই থেকে না পড়ে ভাবতে বস।

প্রোগ্রামিং হচ্ছে – কম্পিউটারকে দেওয়া আমাদের নির্দেশের একটা সিকুয়েন্স। তো, নির্দেশগুলো কিভাবে দিবে?

এবার আমার “প্রোগ্রামিং এ হাতেখড়ি” [1] লেখাটা পড়। আমার পুরো লেখাটাকে একটা “ছবি”তে আনার চেষ্টা কর। প্রোগ্রামিং, ল্যাঙ্গুয়েজ, ব্রাঞ্চিং, লুপিং, আবস্ট্রাকশান – সব একটা “ছবি”তে সাজিয়ে রাখো। তখন বুঝবে কোন কাজে কোনটা ব্যবহার করতে হয়।

আবার ধর, মানুষের চোখ কিভাবে কাজ করে জানতে চাইছ। চোখের বিভিন্ন অংশ দেখে নাও। লেন্সের পেছনে রেটিনা, রেটিনা থেকে নার্ভ ইম্পালস প্রাইমারি ভিশুয়াল কর্টেক্স, সেকেন্ডারি ভিশুয়াল কর্টেক্স – সব নিয়ে একটা ছবি। এবার আলাদা আলাদাভাবে লেন্স, রেটিনা, প্রাইমারি আর সেকেন্ডারি ভিশুয়াল কর্টেক্স নিয়ে পড় আর প্রত্যেকটা সম্পর্কে যাই শিখছ, সব সেই ছবিতে সাজিয়ে রাখো। তাতে মানুষের চোখ কিভাবে কাজ করে সামগ্রিকভাবে বুঝতে পারবে।  

এভাবে যে বিষয়টা সম্পর্কে জানতে চাইছ, সেই বিষয়ের সমস্ত জ্ঞান একটা ছবিতে সাজিয়ে রাখো। তখন সেই বিষয়টা সম্পর্কে একটা সামগ্রিক ধারণা হবে। 

আরেকটা গুরুত্বপূর্ণ ব্যাপার হল, যা নিয়ে পড়ছ, তাকে বাস্তব জীবনের অন্য সবকিছুর মত অনুভব কর। যেমন ধর, চোখ নিয়ে পড়ছ। চোখেও লেন্স আছে – এটা পড়ে চমকে ওঠ – ওয়াও! Physics এ যে লেন্স নিয়ে পড়ছিলাম – আমাদের চোখেও ওরকম আছে!

দুটা ব্যাপার গুরুত্বপূর্ণ –

  • প্রথম প্রথম ভাবতে অনেক কষ্ট হবে। কিন্তু ভাবতে থাকো – ব্রেইনের ক্ষমতা বাড়বে। তখন কি যে মজা হবে! শামিতা হবে ইন্টেলেকচুয়াল!
  • মাথায় গুছিয়ে রাখার সবচেয়ে ভাল উপায় Visualize করা। Visualize করলে পুরো ব্যাপারটা একসাথে দেখতে পাবে। Visualize না করলে আলাদা আলাদা অংশ দেখবে – পুরো ব্যাপারটা সম্পর্কে একটা সামগ্রিক ধারণা তৈরি হবে না। Visualize করে খাতায় বা ল্যাপটপে মাইন্ড ম্যাপিং অ্যাপ্লিকেশানে এঁকে রাখতে পারো।

এটা পড় – 


“Usually we make a practice of stopping an occupation as we meet the first layer of fatigue…… But if an unusual necessity forces us onward, a surprising thing occurs. The fatigue gets worse up to a certain point, when, gradually or suddenly, it passes away and we are fresher than before!….We have evidently tapped a new level of energy. There may be layer after layer of this experience, a third and a fourth ‘wind’. We find amounts of ease and power that we never dreamed ourselves to own……habitually we never push through the obstruction of fatigue.” [2]

ভাবতে চেষ্টা করলে একসময় fatigue পেয়ে বসবে। কিন্তু একটু কষ্ট করে ভাবতে থাকো – কিছুক্ষণ পর fatigue কেটে যাবে। হঠাৎ তোমার চিন্তা করার ক্ষমতাও বাড়বে। কিছুক্ষণ আগে যা ভাবতে কষ্ট হচ্ছিল – এখন ওটা নিয়ে ভাবা সহজ মনে হবে।

ঠিক যেভাবে মানুষ নিয়মিত Exercise করে ধীরে ধীরে ওজন তোলার ক্ষমতা বাড়ায়, চিন্তা করতে করতে ধীরে ধীরে Analytical চিন্তা করার ক্ষমতাও বাড়বে।

এভাবে কিছুদিন চেষ্টা করলে ব্রেইনের ক্ষমতা বাড়তে বাড়তে কিছুদিন পর দেখা যাবে ইন্টেলেকচুয়াল শামিতা তাহসিনের মাথায় দারুণ দারুণ সব আইডিয়া আসছে!

কাজেই কোন কিছু নিয়ে শিখতে চাইলে

  • প্রথমে – বিষয়টা সম্পর্কে কি কি জানোভেবে 
    • একটা ছবিতে সাজিয়ে রাখবে। 
  • তারপর নিজেকে নিজে প্রশ্ন করে তোমার জানায় যা যা ঘাটতি আছে সেসব
    • বই পড়ে বা Google করে বা কারও কাছ থেকে জেনে সেই ছবিতে সাজিয়ে রাখবে। 
  • যা নিয়ে পড়ছ তাকে বাস্তব জীবনের অন্য যেকোনো ব্যাপারের মত অনুভব করার চেষ্টা করবে।    


ভাবো! – এটাই কোন কিছু শেখার সবচেয়ে সেরা উপায়।

রেফরেন্স

Managing Complexity

Managing Complexity In Your Head

Finding it hard to understand a complex phenomenon?

How do you manage complexity in your head?

1. Visualization / Imagination

Language and words are discrete. Visualize, so you see ‘all’, ‘the whole’ at once.

  • Organization
  • Connected Structure – how parts are connected to form the whole; what happens when a part is changed.
  • Chunking

2. Abstraction

Create Abstractions to help you see whole in terms of abstract concepts, when it’s hard to see ‘whole’ at once.

  • Visualization is usually top-down; creating abstractions can be done both bottom-up and top-down.
  • Recursive definitions are one type of abstraction.
  • Naming.

3. Generalization

14724563_1788317928112078_2697529884478836366_n

‘Have a good day , and a great week , and just a wonderful life in general ! ‘ – Generalization by Katrina Kaif

Abstract classes and classes of behaviors into Generalizations.

Science is all about discovering generalizations.

4. Systems Thinking

Divide the whole into systems and the systems into sub-systems and their interactions – Systems Thinking.

5. Knowledge Ontology

Organize generalizations into Knowledge Ontology.

Move up and down between Multiple Levels Of Abstractions.

6. Point of View / Perspective

16641067_1843139239296613_5681191096692787784_n

Perspective by Katrina Kaif

Find new Points of view from which to look at the domain under consideration (examples include how Feynman found new way of looking at interactions between light and matter which helped him discard infinities and formulate QED).

 

  • Understand part (representative element / elements) to understand the whole – Part – Whole.
  • Lens tool – “zoom in” to “zoom out”.
  • Problem – Sub-problem
    • Examples
      • Recursion
      • Dynamic Programming
      • Mathematical Induction
  • Individual Element – Whole 
    • Examples
      • Matrix Multiplication: individual element = respective row * column
      • Proof of Inclusion Exclusion Principle.
      • Coloring Principle (Problem Solving Heuristic)
      • Telescoping Tool (Mathematical Problem Solving; Series Summation)
  • Local Behavior – Global Behavior
    • Invariance Principle (Problem Solving Heuristic)
      • Change in individual states – Invariant Global function.
    • Iteration in Computing
      • Thinking in terms of change in state in an iteration.

Java Development Skills

Java Language & Standard Library

  • Language features
    • Class, Object; Garbage Collection; Inheritance, Polymorphism, Interface; Nested Type; Package; Assertion; Generics; Enum; Exception; Annotation; Reflections;
  • Data Manipulation API 
    • Math; Random number; BigDecimal; BigInteger; String, Character, Regular Expression; Primitive Wrapper; Array; Collections; XML Processing;
  • Development API 
    • Internationalization; Preferences; References; JMX; JNI. 
  • Systems and Network Programming API 
    • System; GUI, Swing, AWT; File; JDBC; Threading (Thread & Lock); Concurrency; Networking – Protocols; Servlet, JSP; Web Services; JMS. 


Java Vital Techniques

  • Concurrency
  • Software Engineering: Maintainable, Replaceable Codebase, Modules
    • Design Patterns
    • Dependency Injection, Inversion Of Control
    • AOP 
      • AspectJ
    • Modular Java 
      • OSGi
    • Software Oriented Architecture (SOA)
  • Classfiles & Bytecodes
  • Performance Tuning


Java Libraries & Frameworks

  • Spring 
    • Dependency Injection framework 
    • Distributed Application Development
  • Android 
    • Mobile Application Development
  • Play 
    • Highly concurrent & distributed Rapid Web Application Development Framework

  • Google Guice
    • Dependency Injection framework.
  • ActiveMQ
    • Message broker. JMS Client. 

  • Hadoop 
    • Mapreduce framework for distributed data processing.
    • Hive
    • Pig
    • HBase
  • Mahout
  • Hama
  • Zookeeper
  • Lucene


Java Software Development Tools

  • Java Code Conventions
  • Software Development Processes
  • Automation: Productivity Increase
  • Testing
    • Unit Testing
    • Integration, Functional, Load, Performance Testing
  • Build 
    • Maven
  • Continuous Integration
    • Jenkins
  • Version Control
    • Git
  • Logging
    • SLF4J
  • Quality Metrics
  • Issue Management
    • Bugzilla
  • Technical Documentation Tools

Polyglot Programming on JVM
  • Scala
  • Clojure

শিক্ষায় উদ্যোগের পরিকল্পনা

ডিজিটাল প্রযুক্তি ব্যবহার করে একজন শিক্ষকের পক্ষে অনেকগুলো এলাকায় অনেক অনেক ছাত্রছাত্রীর কাছে কাছে পৌঁছানো সম্ভব।

ধরা যাক, শিক্ষক আমি।

আমি লাইভ অথবা রেকর্ডেড লেকচার দেবো। স্কুলে স্কুলে প্রোজেক্টার – বড় স্ক্রিনে লেকচার সম্প্রচারিত হবে। আগ্রহী সব স্কুলে একই সময়ে লেকচার সম্প্রচারিত হবে।

লেকচার হবে সৃজনশীল এবং বাস্তব জীবনে প্রয়োগ নির্ভর। এতে বই থেকে শেখা জ্ঞান দিয়ে জগতটাকে দেখতে শেখানো হবে। আবার চারপাশটা পর্যবেক্ষণ করে নিজে শেখা – “লার্নিং বাই ডুইং” বা হাতে কলমে শিক্ষা – কিভাবে করা যায় – তাও শেখানো হবে। এতে বইয়ের জগত এবং বাস্তব জীবনের মধ্যে মেলবন্ধন তৈরি হবে।

লেকচার শেষে প্রশ্ন-উত্তর পর্ব। প্রশ্ন-উত্তর পর্বটা হবে লাইভ। যে কোন স্কুলের যে কেউ প্রশ্ন করতে পারবে। আমি স্ক্রিনে উত্তর দেবো।

পুরো লেকচার ফ্ল্যাশ এ করে ছাত্রছাত্রীরা নিজের কাছে রাখতে পারবে।

প্রোজেক্টারের জন্য স্পন্সর জোগাড় করতে হবে। স্পন্সর তাদের অ্যাড দেখাবে প্রোজেক্টারে – “বিজ্ঞাপন বিরতি!”।

পরবর্তীতে কলেজ, বিশ্ববিদ্যালয়, আগ্রহী তরুণদের জন্য তাদের শিক্ষা, দক্ষতা, চাহিদা বিবেচনায় নিয়ে একই ধরণের উদ্যোগ নেওয়া যায়।

সরকার এগিয়ে এলে কত কি করা যায়!

স্কুলগুলোতে আধুনিক লাইব্রেরি গড়ে তোলা যায়। লাইব্রেরিগুলো হতে পারে জ্ঞান চর্চা ও জ্ঞান আদানপ্রদানের কেন্দ্র। বই, উচ্চগতির ইন্টারনেটসহ কম্পিউটার এবং কিছু যন্ত্রপাতি সরবরাহ করা যায়। স্কুল লাইব্রেরিগুলো সবসময় খোলা রাখা যায়। শিক্ষার্থীরা যতক্ষণ খুশি লাইব্রেরিতে সময় কাটাতে পারবে।

শিক্ষার্থীরা আধুনিক তথ্যপ্রযুক্তি ব্যবহার করে নিজেরা শিখতে পারবে। সার্চ করে, পারস্পরিক যোগাযোগের মাধ্যমে এবং শিক্ষকদের সাথে যোগাযোগের মাধ্যমে জ্ঞান আহরণ করবে। লাইব্রেরিতে যন্ত্রপাতি ব্যবহার করে হাতে কলমে শিখবে।

আরেকটা ব্যাপার সবাইকে শেখানো যায় – “ভাবতে” শেখানো। ছাত্র – ছাত্রীরা সবাই অবসরে ধাধার সমস্যা, বিজ্ঞানের সমস্যা সমাধান করবে। মেধা-বুদ্ধি শানিত করবে। প্রত্যেকে হয়ে উঠবে চিন্তাশীল, মেধাবী, বুদ্ধিমান। 

বাংলাদেশ হবে মেধাবী মানুষদের দেশ!

বাংলাদেশ ক্রিকেট দল নিয়ে পরিকল্পনা

[প্রকাশের তারিখ: ২ ফেব্রুয়ারি, ২০১৪]


২০১৫ বিশ্বকাপ ক্রিকেট কিন্তু এগিয়ে আসছে!

মধ্যমেয়াদি পরিকল্পনা করার এখনই সময়। 

২০১৫ বিশ্বকাপ সেমিফাইনালে খেলতেই হবে।


আর সেমিফাইনালে পৌঁছে গেলে যে কোন কিছু ঘটতে পারে।
তরুণ মুশফিকের নেতৃত্বাধীন বাংলাদেশ দলটির প্রায় সবাই বয়সে তরুণ। এদের নিয়ে দীর্ঘমেয়াদি পরিকল্পনা করা যায়।

সাকিব, মুশফিক, নাসিরকে নিয়ে আমাদের মিডল অর্ডারটা সলিড। 

এখন তামিম আর শামসুর, মমিনুল, আনামুল কে নিয়ে আমাদের টপ অর্ডারটাও অনেক ব্যলান্সড হয়ে উঠছে। 


খেলোয়াড়রা ব্যক্তিগত টার্গেট করতে পারেঃ 

ICC Ranking Top 50 ODI Batsman – ৭ জন বাংলাদেশী, 
Top 20 ODI Batsman – ৩ জন বাংলাদেশী , 
(বর্তমানে সাকিবের রাঙ্কিং ২২, তামিম ৩১, নাসির ৩৫, মুশফিক ৪৮) [1]

ICC Ranking Top 40 ODI Bowlers – ৫ জন বাংলাদেশী 
Top 10 ODI Bowlers – ২ জন বাংলাদেশী
(বর্তমানে আব্দুর রাজ্জাক ১২, সাকিব ২০, মাশরাফি ৩৮, রুবেল ৫২) [1]

Top 10 ODI all-rounders – ২ জন বাংলাদেশী
Top ODI all-rounder in the world – বাংলাদেশী
(বর্তমানে সাকিব ২) [1]তাহলে অনেক বালেন্সড টীম হবে। 

ব্যক্তিগত অনুপ্রেরণা হিসেবেও টার্গেট ভাল কাজ করে।



প্রতিটা ম্যাচকে সত্যিকারের “game” হিসেবে নিতে হবে। “উপভোগ” করতে হবে।

খেলা মানুষ খেলে কেন? উপভোগ করার জন্যই তো, নাকি?

“চাপ” শব্দটাই বাদ দিতে হবে।

“চাপ” কমাতে আমরা সাপোরটাররাও আরও সহনশীল হব। প্রিয় দল হেরে গেলে কার না খারাপ লাগে? কিন্তু প্রিয় খেলোয়াড় ভাল খেললে প্রশংসার পাশাপাশি কোন খেলোয়াড় একদিন ভুল করলে আমরা তার পাশে থাকবো। 



ফুটবলের জাদুকর ব্রাজিলের Pele প্রতি ম্যাচের আগে কি করতেন?

পেলে relaxed হয়ে ফুটবল নিয়ে অতীত সুখস্মৃতিগুলো থেকে ঘুরে আসতেন!

“he (Pele) would begin a sort of waking dream – pleasurable scenes of playing barefoot on Brazilian beaches, playbacks of triumphs of his astonishing career that he planned to emulate. The more important the game, the longer his dream.” [2]

এতে একদিকে ম্যাচের সময় টেনশান থাকতো না। অন্যদিকে confidence এবং নিজের ক্ষমতার উপর faith শক্তিশালী হত –

আমি পেরেছিলাম, আমি আজকেও পারবো।

পেলের তো ল্যাপটপ ছিল না! আমাদের ছেলেরা ম্যাচের আগে ল্যাপটপে নিজের সাফল্যের ভিডিও দেখে অনুপ্রাণিত হতে পারে।

Skill Acquisition

ক্রিকেটের মত খেলায় এক একটা skill acquire করা গুরুত্বপূর্ণ। যেমন এক একটা স্ট্রোক পারফেক্টলি খেলতে শেখা বা ইয়রকার পারফেক্ট করা।

Skill acquire করতে গুরুত্বপূর্ণ:

Feedback থেকে শেখা।

ধরা যাক, কেউ cover drive পারফেক্ট করতে চাইছে। নিজে বারবার চেষ্টা করে নিজের ভুল, নিজের সাফল্য থেকে শেখা হল Feedback থেকে শেখা। ফুটওয়ার্ক ঠিকমত হচ্ছে তো? বলটা ঠিক কোনদিকে পাঠাতে চায়? ফিল্ডাররা কোথায়? সেবার ভুল কেন হল? ঐবার এত দারুণভাবে খেললাম কিভাবে? যিনি cover drive ভাল খেলেন, তিনি কিভাবে খেলেন? (তাড়াতাড়ি তাকে ফোন!)

Concentration – সম্পূর্ণ মনোযোগ ব্যাটিং এ আবদ্ধ রাখা। পড়াশোনায় যেমন মনোযোগ লাগে, তেমনি ভাল প্লেয়ারদের সাথে অ্যামেচারদের পার্থক্য গড়ে দেয় Concentration। আমি Meditation রিকমেন্ড করবো।

অনেক অনেক Practice:

কোন একটা স্ট্রোক পারফেক্টলি খেলার দক্ষতা অর্জন করতে অনেক প্র্যাকটিস লাগে। জাতীয় দলের ব্যাটসম্যানরা কিশোর – তরুণ বোলারদের নিয়ে প্র্যাকটিস করতে পারে। নিজেদের ব্যাটিং প্র্যাকটিস হয়ে গেলো। আবার কিশোর – তরুণ বোলারদের বোলিং প্র্যাকটিস হয়ে গেলো। জাতীয় দলের ব্যাটসম্যানদের বল করতে পেরে ওদের অনুপ্রেরণাও বাড়বে।

Win -win! এমন পরিকল্পনা যাতে সবাই জিতল! খেলোয়াড়রাও, তরুণরাও।

জাতীয় দলের বোলাররা ও এটা করতে পারে।



বাংলাদেশ ক্রিকেট দল নিয়ে আরও লেখা

রেফরেন্স

Vision Of “World Wide Education Platform” (WWEP)

The vision


People all over the world would go to a few education providers online for all their education and learning.
“In 50 years, he (Sebastian Thrun) says, there will be only 10 institutions in the world delivering higher education and Udacity has a shot at being one of them.” [1]

I believe it will happen a lot earlier than 2050.

Main Themes of “World Wide Education Platform”

  • One Mobile Computer with broadband access per child
  • Content
  • Authoritative Courses
  • Interactive Content
  • Programming, Computing
  • E-book Subscription
  • Wiki, QA.
  • Learning by doing: Projects, Open Platforms, Open source software, DIY
  • Teaching Meta-Learning Skills
  • HTML5 based. (Type of device won’t become a roadblock.)
  • Personalized Education
  • Content Discovery: Search, Recommendation, Hyperlinks
  • Big Data
  • Gamified Experience
  • Community driven
  • Wikinomics
  • DIY Communities
  • Lifelong Education
  • Works collaboratively with existing Educational Institutions (Schools, Colleges, Universities)

 


Minimum goal of education should be to teach people required skills so that they can learn whatever they need, acquire whichever skill they want to excel at, on their own.

There lies enormous potential in each and everyone of us. A great education system would unlock that potential.

Current Platforms
Udacity
Coursera
EdX
Khan Academy
শিক্ষক

More

 
Reference

Organization Of The Study And Application Of Algorithms

Computational Abstractions

  • Control Abstractions
    • Loop 
    • Recursion
  • Data Abstractions 
    • Data Abstraction Components
      • Structure of Data
      • Operations on Data
    • Linear Data Abstractions 
      • Array
      • Stack 
      • Queue
      • Linked List 
    • Tabular Data Abstractions 
      • Hashing
    • Recursive Data Abstractions
      • Binary Search Tree 
      • Red Black Tree
      • Heap
    • Graph Abstraction
      • Model: Objects with binary relation defined on pairs


Computational Complexity

  • Time Complexity
  • Space Complexity  


    Algorithmic Paradigms

    • Dynamic Programming
      • Recursively define solution to problem in terms of solution to limited number of subproblems.
        • What could be the penultimate subproblems? (Work backwards.)
        • Subproblems having same structure as the original problem, only being smaller in size. 
        • Prove – defining solutions in terms of solutions to subproblems is optimal.
      • Compute and store the results of subproblems in memory so that you don’t have to recompute them. Then use the stored results to compute solution to the problem. 
    • Divide & Conquer
      • Divide the problem into subproblems (dividing up inputs into parts) and solve the subproblems recursively. 
      • Combine the results of solutions of subproblems.
    • Greedy
    • Backtracking
      • If you can define the space of all possible solutions, you can search the space for solutions systematically through backtracking. 
      • In backtracking, you generate one element at a time towards the solution and backtrack whenever you meet a dead-end.  


    Application Domains


    Design algorithms using 

    • Domain Knowledge
    • Computational Abstractions & Algorithmic Paradigms 

    Number Theory

    • Domain Knowledge: Prime, GCD etc.
    • Computational Abstractions & Algorithmic Paradigms: Loop, Recursion etc.

    Combinatorics

    • Domain Knowledge: Binomial Co-efficient, etc.
    • Computational Abstractions & Algorithmic Paradigms: Loop, Table, Dynamic Programming etc.

    String Processing

    Linear Programming


    Matrix Algorithms

    Computational Geometry

    • Domain Knowledge: Properties of geometric objects
    • Computational Abstractions & Algorithmic Paradigms: Stack, etc.

    Polynomials & Fast Fourier Transform