The document discusses learning programming through MOOCs and machine learning. It provides data on a MOOC with over 160,000 students from 209 countries. It analyzes student error messages, submissions, and interactions to improve programming instructions. However, programming languages can be ambiguous and students struggle with different concepts. The document advocates for mastery learning through one-on-one tutoring and continual course improvements using data and machine learning.
Class-oriented programming, as supported by Java, C++ and C#, helps you develop classes for your customer. Object-oriented programming, on the other hand, lets you focus on networks of cooperating objects that work together to create business value.
This talk describes the trygve open-source programming language and its support for real object-oriented programming the way it was envisioned by those who shaped it in its early days. Learn about trygve and maybe even join the community to help evolve it. And if you’re a working developer, some of the ideas carry over into C# and C++.
More on the philosophy and so forth:
* User manual (the intro might help)
* Original “white paper”
* More academic paper
* fulloo web site
* Past version of a similar talk
About the speaker
Jim Coplien is a Certified Scrum Trainer in Denmark and best-selling author, lecturer, and consultant in the areas of software design, object-oriented programming, lean software development process, and agile development. His earlier work was one of the foundations of Scrum and of XP and he is one of the founders of the software pattern discipline. He helps enterprises solve architectural and organisational problems together and challenges people to question practices they do out of habit or popularity, exhorting people to establish empirical and otherwise provable justifications for their practices.
(More info and video at fsharpforfunandprofit.com/fourfromforty)
The 1970's were a golden age for new programming languages, but do they have any relevance to programming today? Can we still learn from them?
In this talk, we'll look at four languages designed over forty years ago -- SQL, Prolog, ML, and Smalltalk -- and discuss their philosophy and approach to programming, which is very different from most popular languages today.
We'll come away with some practical principles that are still very applicable to modern development. And you might discover your new favorite programming paradigm!
Ruby is the most flexible language out there, imposing no limitations on the developers, giving all the expressiveness possible. Or so we think. But there are languages pushing dynamic features and expressiveness far beyond what is possible in Ruby. Some are old, like Lisp and Smalltalk, some are just emerging, purely experimental languages, like Ioke or Newspeak. In this talk, we will take a look at some of these languages and what they can do that Ruby can't. What does it mean, to be homoiconic? How does a language without keywords work? Can I dispatch in more than one direction? And what is partial evaluation?
Beyond the Symbols: A 30-minute Overview of NLPMENGSAYLOEM1
This presentation delves into the world of Natural Language Processing (NLP), exploring its goal to make human language understandable to machines. The complexities of language, such as ambiguity and complex structures, are highlighted as major challenges. The talk underscores the evolution of NLP through deep learning methodologies, leading to a new era defined by large-scale language models. However, obstacles like low-resource languages and ethical issues including bias and hallucination are acknowledged as enduring challenges in the field. Overall, the presentation provides a condensed, yet comprehensive view of NLP's accomplishments and ongoing hurdles.
Four Languages From Forty Years Ago (NewCrafts 2019)Scott Wlaschin
(More info and video at fsharpforfunandprofit.com/fourfromforty)
The 1970's were a golden age for new programming languages, but do they have any relevance to programming today? Can we still learn from them?
In this talk, we'll look at four languages designed over forty years ago -- SQL, Prolog, ML, and Smalltalk -- and discuss their philosophy and approach to programming, which is very different from most popular languages today.
We'll come away with some practical principles that are still very applicable to modern development. And you might discover your new favorite programming paradigm!
Class-oriented programming, as supported by Java, C++ and C#, helps you develop classes for your customer. Object-oriented programming, on the other hand, lets you focus on networks of cooperating objects that work together to create business value.
This talk describes the trygve open-source programming language and its support for real object-oriented programming the way it was envisioned by those who shaped it in its early days. Learn about trygve and maybe even join the community to help evolve it. And if you’re a working developer, some of the ideas carry over into C# and C++.
More on the philosophy and so forth:
* User manual (the intro might help)
* Original “white paper”
* More academic paper
* fulloo web site
* Past version of a similar talk
About the speaker
Jim Coplien is a Certified Scrum Trainer in Denmark and best-selling author, lecturer, and consultant in the areas of software design, object-oriented programming, lean software development process, and agile development. His earlier work was one of the foundations of Scrum and of XP and he is one of the founders of the software pattern discipline. He helps enterprises solve architectural and organisational problems together and challenges people to question practices they do out of habit or popularity, exhorting people to establish empirical and otherwise provable justifications for their practices.
(More info and video at fsharpforfunandprofit.com/fourfromforty)
The 1970's were a golden age for new programming languages, but do they have any relevance to programming today? Can we still learn from them?
In this talk, we'll look at four languages designed over forty years ago -- SQL, Prolog, ML, and Smalltalk -- and discuss their philosophy and approach to programming, which is very different from most popular languages today.
We'll come away with some practical principles that are still very applicable to modern development. And you might discover your new favorite programming paradigm!
Ruby is the most flexible language out there, imposing no limitations on the developers, giving all the expressiveness possible. Or so we think. But there are languages pushing dynamic features and expressiveness far beyond what is possible in Ruby. Some are old, like Lisp and Smalltalk, some are just emerging, purely experimental languages, like Ioke or Newspeak. In this talk, we will take a look at some of these languages and what they can do that Ruby can't. What does it mean, to be homoiconic? How does a language without keywords work? Can I dispatch in more than one direction? And what is partial evaluation?
Beyond the Symbols: A 30-minute Overview of NLPMENGSAYLOEM1
This presentation delves into the world of Natural Language Processing (NLP), exploring its goal to make human language understandable to machines. The complexities of language, such as ambiguity and complex structures, are highlighted as major challenges. The talk underscores the evolution of NLP through deep learning methodologies, leading to a new era defined by large-scale language models. However, obstacles like low-resource languages and ethical issues including bias and hallucination are acknowledged as enduring challenges in the field. Overall, the presentation provides a condensed, yet comprehensive view of NLP's accomplishments and ongoing hurdles.
Four Languages From Forty Years Ago (NewCrafts 2019)Scott Wlaschin
(More info and video at fsharpforfunandprofit.com/fourfromforty)
The 1970's were a golden age for new programming languages, but do they have any relevance to programming today? Can we still learn from them?
In this talk, we'll look at four languages designed over forty years ago -- SQL, Prolog, ML, and Smalltalk -- and discuss their philosophy and approach to programming, which is very different from most popular languages today.
We'll come away with some practical principles that are still very applicable to modern development. And you might discover your new favorite programming paradigm!
UiPath Test Automation using UiPath Test Suite series, part 4DianaGray10
Welcome to UiPath Test Automation using UiPath Test Suite series part 4. In this session, we will cover Test Manager overview along with SAP heatmap.
The UiPath Test Manager overview with SAP heatmap webinar offers a concise yet comprehensive exploration of the role of a Test Manager within SAP environments, coupled with the utilization of heatmaps for effective testing strategies.
Participants will gain insights into the responsibilities, challenges, and best practices associated with test management in SAP projects. Additionally, the webinar delves into the significance of heatmaps as a visual aid for identifying testing priorities, areas of risk, and resource allocation within SAP landscapes. Through this session, attendees can expect to enhance their understanding of test management principles while learning practical approaches to optimize testing processes in SAP environments using heatmap visualization techniques
What will you get from this session?
1. Insights into SAP testing best practices
2. Heatmap utilization for testing
3. Optimization of testing processes
4. Demo
Topics covered:
Execution from the test manager
Orchestrator execution result
Defect reporting
SAP heatmap example with demo
Speaker:
Deepak Rai, Automation Practice Lead, Boundaryless Group and UiPath MVP
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...Ramesh Iyer
In today's fast-changing business world, Companies that adapt and embrace new ideas often need help to keep up with the competition. However, fostering a culture of innovation takes much work. It takes vision, leadership and willingness to take risks in the right proportion. Sachin Dev Duggal, co-founder of Builder.ai, has perfected the art of this balance, creating a company culture where creativity and growth are nurtured at each stage.
Key Trends Shaping the Future of Infrastructure.pdfCheryl Hung
Keynote at DIGIT West Expo, Glasgow on 29 May 2024.
Cheryl Hung, ochery.com
Sr Director, Infrastructure Ecosystem, Arm.
The key trends across hardware, cloud and open-source; exploring how these areas are likely to mature and develop over the short and long-term, and then considering how organisations can position themselves to adapt and thrive.
Elevating Tactical DDD Patterns Through Object CalisthenicsDorra BARTAGUIZ
After immersing yourself in the blue book and its red counterpart, attending DDD-focused conferences, and applying tactical patterns, you're left with a crucial question: How do I ensure my design is effective? Tactical patterns within Domain-Driven Design (DDD) serve as guiding principles for creating clear and manageable domain models. However, achieving success with these patterns requires additional guidance. Interestingly, we've observed that a set of constraints initially designed for training purposes remarkably aligns with effective pattern implementation, offering a more ‘mechanical’ approach. Let's explore together how Object Calisthenics can elevate the design of your tactical DDD patterns, offering concrete help for those venturing into DDD for the first time!
State of ICS and IoT Cyber Threat Landscape Report 2024 previewPrayukth K V
The IoT and OT threat landscape report has been prepared by the Threat Research Team at Sectrio using data from Sectrio, cyber threat intelligence farming facilities spread across over 85 cities around the world. In addition, Sectrio also runs AI-based advanced threat and payload engagement facilities that serve as sinks to attract and engage sophisticated threat actors, and newer malware including new variants and latent threats that are at an earlier stage of development.
The latest edition of the OT/ICS and IoT security Threat Landscape Report 2024 also covers:
State of global ICS asset and network exposure
Sectoral targets and attacks as well as the cost of ransom
Global APT activity, AI usage, actor and tactic profiles, and implications
Rise in volumes of AI-powered cyberattacks
Major cyber events in 2024
Malware and malicious payload trends
Cyberattack types and targets
Vulnerability exploit attempts on CVEs
Attacks on counties – USA
Expansion of bot farms – how, where, and why
In-depth analysis of the cyber threat landscape across North America, South America, Europe, APAC, and the Middle East
Why are attacks on smart factories rising?
Cyber risk predictions
Axis of attacks – Europe
Systemic attacks in the Middle East
Download the full report from here:
https://sectrio.com/resources/ot-threat-landscape-reports/sectrio-releases-ot-ics-and-iot-security-threat-landscape-report-2024/
The Art of the Pitch: WordPress Relationships and SalesLaura Byrne
Clients don’t know what they don’t know. What web solutions are right for them? How does WordPress come into the picture? How do you make sure you understand scope and timeline? What do you do if sometime changes?
All these questions and more will be explored as we talk about matching clients’ needs with what your agency offers without pulling teeth or pulling your hair out. Practical tips, and strategies for successful relationship building that leads to closing the deal.
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered QualityInflectra
In this insightful webinar, Inflectra explores how artificial intelligence (AI) is transforming software development and testing. Discover how AI-powered tools are revolutionizing every stage of the software development lifecycle (SDLC), from design and prototyping to testing, deployment, and monitoring.
Learn about:
• The Future of Testing: How AI is shifting testing towards verification, analysis, and higher-level skills, while reducing repetitive tasks.
• Test Automation: How AI-powered test case generation, optimization, and self-healing tests are making testing more efficient and effective.
• Visual Testing: Explore the emerging capabilities of AI in visual testing and how it's set to revolutionize UI verification.
• Inflectra's AI Solutions: See demonstrations of Inflectra's cutting-edge AI tools like the ChatGPT plugin and Azure Open AI platform, designed to streamline your testing process.
Whether you're a developer, tester, or QA professional, this webinar will give you valuable insights into how AI is shaping the future of software delivery.
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...Jeffrey Haguewood
Sidekick Solutions uses Bonterra Impact Management (fka Social Solutions Apricot) and automation solutions to integrate data for business workflows.
We believe integration and automation are essential to user experience and the promise of efficient work through technology. Automation is the critical ingredient to realizing that full vision. We develop integration products and services for Bonterra Case Management software to support the deployment of automations for a variety of use cases.
This video focuses on the notifications, alerts, and approval requests using Slack for Bonterra Impact Management. The solutions covered in this webinar can also be deployed for Microsoft Teams.
Interested in deploying notification automations for Bonterra Impact Management? Contact us at sales@sidekicksolutionsllc.com to discuss next steps.
29. Data Sources
• Enrollment / Dropout
• Quizzes and Exams
• Video Interactions
• Discussion Forums
• Program submissions
30. Syntax Error Messages Vague
if x = 1:
^
SyntaxError: invalid syntax
SyntaxError: Use “==“ for comparison,
use “=“ for assignment.
31. Inputs to Compiler Error Routine
Source
Code
Compiler
Error
Message
Ignored:
- Past program submission histories
- Problem Description
- Comments
- Test Cases
37. Attractive Nuisance
>>> table = [[]] * 5
>>> table
[[], [], [], [], []]
>>> def add(key, table):
table[hash(key) % len(table)].append(key)
>>> add(’x', table)
>>> table
[[’x'], [’x'], [’x'], [’x'], [’x']]
>>> table = listof(5, list)
def listof(n, kind):
"Make a list of n elements, each kind()."
return [kind() for _ in range(n)]
38. Faulty Student Models
• Given:
• nums = [1, 2, -3]
• max(nums) == 2
• max(nums, key=abs) == -3
• len(‘word’) == 4
• wordlist = file(‘words’).read().split()
• What is the longest word in wordlist?
• ?
• ??
• max(wordlist, key=len)
39. DWIM Attractive Nuisance
• def qsort(A):
if len(A) <= 1: return A
LT, EQ, GT = []
p = A[len(A)/2]
for x in A:
bin = (LT if x<p else GT if x>p else EQ)
bin.append(x)
return qsort(LT) + EQ + qsort(GT)
LT = EQ = GT = []
LT, EQ, GT = [], [], []
40. DWIM Attractive Nuisance
• spam = ['cat', 'dog', 'mouse']
• for i in range(spam):
print(spam[i])
• for i in len(spam):
print(spam[i])
• for i in range(len(spam)):
print(spam[i])
for x in spam:
print(x)
• for i in range(len(spam)):
spam[i] = spam[i].upper()
for x in spam:
x = x.upper()
41. Language Too General
y = (x + 1) (x - 1)
TypeError: unsupported operand
type(s) for +: 'object' and
'int'
SyntaxError: ‘*’ operator required.
use “(x + 1) * (x – 1)”
42. Multi-Language Confusion
File ”example.py”, line 1
root = new Node()
^
SyntaxError: invalid syntax
Test.java:6: cannot find symbol
symbol : class awt
location: package java
java.awt.Color(r, g, b);
^
Error: use “Node()” in Python;
use “new Color(…)” in Java
49. Motivation, not Information
• Willpower
• Due dates
• Peer support (forums, outside groups)
• Faculty encouragement (email)
• Pride of accomplishment
• Authenticity
• Early adopter
50.
51. Timeline (successful Coursera course)
#usersonsite
Real Couse
100K
50K
ramp up + exponential decay + due dates
synchronous, evergreen,
semi-synchronous, bus route
57. Alpha, Beta (steady progress) significantly better than Gamma (thrash, then
solution) on midterm. No significant difference on score for this assignment.
59. • Learning results from
what the student does
and thinks and only
from what the student
does and thinks. The
teacher can advance
learning only by
influencing what the
student does to
learn. -
Herb Simon
60. • Problem first, then explanation (Peer)
• Make students to prediction (see it is wrong)
• (They didn’t like that.)
• Experiments with more open-ended problems
• Experiments with peer grading
61. • “Richard Hamming told me his
secret: First get together the problem
sets and exams that you want the
students to be able to solve. Then
write a book that will teach them how
to solve them.” -- Hal Varian (1993)
T D D
68. How do we make it
one to one tutoring
and
mastery learning?
69.
70. “Books will soon be obsolete in the public schools.
Scholars will be instructed through the eye.
It is possible to teach every branch of human knowledge
with the motion picture. Our school system will be
completely changed inside of ten years”- Edison, 1913
71. “Lectures were once useful,
but now, when all can read,
and books so numerous,
lectures are unnecessary.
If your attention fails,
and you miss part of a lecture,
it is lost; you cannot go back
as you do upon a book.”
- 1791
72. Many Types of Individualization
• Student control over rewind (multiplay)
• Student choice of where to go next (multipath)
• Flipped classroom (Koller, etc.)
• Peer instruction (Mazur)
• Peer feedback
• Forums and other one-to-one interactions
• Machine learning?
• Courseware Engineering?
73. Open-Ended Work
Peer Grade
Self Grade
0
10
20
30
40
50
60
70
80
90
100
0 10 20 30 40 50 60 70 80 90 100
Teacher Grade
StudentGrade
“The Impact of Self-and Peer-Grading on Student Learning”.
P. Sadler, E. Good. Educational Assessment (2006).