Mark Guzdial

computinged.wordpress.com · Personal blog · on HN since 2009

Mark Guzdial, a Georgia Tech computing education professor, writes about teaching programming, broadening participation in CS and learning research.

What HN saysHN commenters recommend it for research on broadening participation in computer science and as a source for details on Georgia Tech's courses.
69HN people shared it
21linked it in comments
98stories submitted
1.0Kstory points
6 months agolast shared
2009people per year2026

Most-shared posts

  1. 1
    Apple removes Scratch from iPad/iPhone/iTouch
    4 people · 158 points · first shared 2010 · 68 comments on HN
  2. 2
    Introducing GP: A General Purpose Block Language
    4 people · 4 points · first shared 2016 · discussion on HN
  3. 3
    Moti asks: Objects Never? Well, Hardly Ever
    4 people · 1 points · first shared 2010 · discussion on HN
  4. 4
  5. 5
  6. 6
    Homepage
    3 people · first shared 2013
  7. 7
    A theory of transfer of knowledge from programming
    2 people · 5 points · first shared 2024 · discussion on HN
  8. 8
  9. 9
    Matlab and APL: Meeting Cleve Moler (2012)
    2 people · 2 points · first shared 2025 · discussion on HN
  10. 10
    Dijkstra’s Truths about Computing Education Aren’t
    2 people · 1 points · first shared 2020 · 1 comments on HN
  11. 11
  12. 12
    Stanford CS enrollment increase "downright scary"
    1 people · 186 points · first shared 2011 · 173 comments on HN
  13. 13
  14. 14
  15. 15
    Is learning to program inherently hard?
    1 people · 62 points · first shared 2011 · 66 comments on HN

What HN people wrote when they linked it

jarmitage · 2018-09-05
If you want to learn more about research into broadening participation in CS in the US, I recommend Mark Guzdial's blog and publications: https://computinged.wordpress.com/ This is a good talk from Mark about his (and others') work: "Meeting the needs for a computationally literate society" (2017) https://www.youtube.com/watch?v=wk9y09mmL9M
catamount · 2023-04-08
This book should really be called "How to Design Functions" -- not "Programs" -- because it sidesteps the most difficult and interesting topics in making software programs, namely the work of a) separating a task into simpler subtasks and then b) composing smaller functions into a program that performs the task. IIRC the most complicated example in this book pertains to calculating the optimal price of movie tickets. There is merit in some of the book's recommendations. But overall this material could be condensed into the 25-page intro of a much more interesting programming textbook. As it stands, HTDP is a buzzkiller. Speaking of which, here's a 2010 blog post about how Georgia Tech stopped using HTDP, featuring an argument in the comments between the author of HTDP and Alan Kay. https://computinged.wordpress.com/2010/05/11/playing-the-cards-youre-d…
staticassertion · 2022-05-10
I'm extremely aware of Alan Kay's statement, as well as the foundations of the actor model. The reality is that today that is not what OOP has become, and Alan Kay would agree. > that suggests we got OOP wrong, very wrong. Alan Kay very clearly states that people "got it wrong" and that OOP was supposed to be about messaging. ie: He intended for it to be one thing, but it isn't that thing. > I'm sorry that I long ago coined the term "objects" for this topic because it gets many people to focus on the lesser idea. The big idea is "messaging" > The key in making great and growable systems is much more to design how its modules communicate rather than what their internal properties and behaviors should be. [..] http://wiki.c2.com/?AlanKayOnMessaging https://computinged.wordpress.com/2010/09/11/moti-asks-objects-never-w…
selenamarie · 2013-06-04
I know some of the women who have volunteered to teach and they love this program. The kids come away with working software and produce something that they can immediately see the value of. There's a great quote in http://computinged.wordpress.com/2010/05/11/playing-the-cards-youre-de… about relevance of instruction: "Students abandon classes that they perceive as being irrelevant to them." App Camp is obviously relevant and is targeting an age group that is vulnerable to permanently dropping out of math and computer-related education.
donretag · 2013-02-04
Since the course was offered by Georgia Tech, hopefully the Computing Education blog (run by a GT professor) will have more details: http://computinged.wordpress.com/
base2john · 2011-12-26
Great news, I hope this means Apple will allow MIT's Scratch into the App Store soon. http://computinged.wordpress.com/2010/04/15/apple-removes-scratch-from…
pmarreck · 2016-03-31
> Making Software, Oram & Wilson Going to quote one of the authors (Hakan Erdogmus) from here: https://computinged.wordpress.com/2010/11/01/making-software-tdd-doesn… "I am one of the authors of the TDD chapter. Ours was a review of existing some 30+ studies of TDD. Yes, Nachi’s experiments (the MSR study mentioned above) were included. BTW, I wouldn’t have concluded that “tdd doesn’t work” based on our data. Rather, I would have conservatively concluded: there is moderate evidence supporting TDD’s external quality and test-support benefits, but there is no consistent evidence in one direction or other regarding its productivity effects." The only thing inconclusive was the increased productivity effect, not the code quality effect. > It's especially not clear whether it's worth it to do TDD in comparison with simple automated testing and other testing strategies. https://www.researchgate.net/publication/3188484_On_the_effectiveness_… I've done every testing strategy. Test-none, BDD, TDD, test-after, integration testing, unit testing, GUI testing, you name it. If your code will last longer than a couple years, it is worth it to do extensive unit testing via TDD, integration testing of major/important workflows, a visual once-over by a QA person to make sure something didn't break the CSS, and that's it. If you are the founder of a startup and expect to sell within 2 years (and are…
DrNosferatu · 2025-05-19
the man who invented MATLAB, Cleve Moler said: [I’ve] always seen MATLAB as “portable APL”. [1] …why the downvoting? [1] - https://computinged.wordpress.com/2012/06/14/matlab-and-apl-meeting-cl…
DarylZero · 2022-01-29
"Computer Science was always supposed to be taught to everyone, and it wasn’t about getting a job: A historical perspective" https://computinged.wordpress.com/2021/11/26/computer-science-was-alwa…
icc97 · 2018-10-30
> Erlang with its active objects seems to me to fit precisely his description. He's said exactly this [0]: > We didn’t even do all of the idea at PARC. Many of Carl Hewitt’s Actors ideas which got sparked by the original Smalltalk were more in the spirit of OOP than the subsequent Smalltalks. Significant parts of Erlang are more like a real OOP language the the current Smalltalk, and certainly the C based languages that have been painted with “OOP paint”. [0]: https://computinged.wordpress.com/2010/09/11/moti-asks-objects-never-w…
buovjaga · 2016-08-01
Adding one more: https://computinged.wordpress.com/2016/06/13/introducing-gp-a-general-… "GP is a new blocks-based programming language being developed by John Maloney (most well-known for developing Scratch), Jens Mönig (developer of Snap!), and Yoshiki Ohshima (one of the developers of Squeak EToys) in Alan Kay’s group. They are all part of the new partnership between Alan Kay and Y-Combinator Research: HARC (Human Advancement Research Community). GP started in the SAP-funded CDG (Communications Design Group)."
Jemmeh · 2016-03-17
#2 is off. The article says "the Bureau of Labor Statistics says that we don't need many more software developers" but the link provided (https://computinged.wordpress.com/2012/05/21/we-need-to-produce-far-mo… says we need loads of software developers, but not as many programmers. From reading the BLS descriptions and some discussions on the programmers stack exchange I'd say programmers as far as the way BLS describes it are essentially intern/entry level software devs. They need someone else to give them direction. http://programmers.stackexchange.com/questions/4951/what-are-the-key-d…
mediumdave · 2015-12-19
It's a fair question whether the visual/blocks model is appropriate for expert programmers. However, there was some research presented at ICER 2015 showing that visual/blocks languages have benefits for students learning to program. Mark Guzdial had an interesting blog post[1] about it. [1] https://computinged.wordpress.com/2015/08/17/icer-2015-blocks-win-prog…
gailcarm · 2012-05-22
I actually wish we talked about LOGO more often. I personally don't have experience with it, and that's probably because it seems to be somewhat of a lost language. This post makes me want to see it make a comeback though: http://computinged.wordpress.com/2012/04/07/we-used-to-know-how-to-tea…
prayag · 2011-10-27
Actually it's true. Apple removed Scratch from their app-store because "Apple wants to focus on consuming media using these devices, not producing media."[1] [1] http://computinged.wordpress.com/2010/04/15/apple-removes-scratch-from…
DonHopkins · 2019-05-23
Alan Kay doesn't consider "remote procedure calls" to be "object oriented programming". http://mythz.servicestack.net/blog/2013/02/27/the-deep-insights-of-ala… mythz> On RPC, and how it distorts developers mindsets in architecting and building systems: Kay> The people who liked objects as non-data were smaller in number, and included myself, Carl Hewitt, Dave Reed and a few others – pretty much all of this group were from the ARPA community and were involved in one way or another with the design of ARPAnet->Internet in which the basic unit of computation was a whole computer. But just to show how stubbornly an idea can hang on, all through the seventies and eighties, there were many people who tried to get by with “Remote Procedure Call” instead of thinking about objects and messages. Sic transit gloria mundi. mythz> Carl Hewitt being the inventor of the Actor Model and Dave Reed who was involved in the early development of TCP/IP and the designer of UDP. mythz> The last latin phrase translates to “Thus passes the glory of the world” - expressing his dismay on what might have been. He also doesn't consider accessing a data field called "entire_name" to be "object oriented programming". He calls that "simulated data structure programming". https://computinged.wordpress.com/2010/09/15/alan-kay-on-motis-objects… Kay> If you are “setting” values from the outside of an object, you are doing “simulated data structure programming” rather than object…
edtechdev · 2017-06-10
Pea & Kurland's basic idea is still correct. They were arguing against the notion that learning Logo programming would exercise some generic intelligence 'muscle' that would benefit students in other areas. Instead, what later research demonstrated was that cognition is contextually bound (see research on situated cognition and situated learning and embodied cognition). In the case of teaching programming skills - that is the main goal, for students to learn how to program and improve their computational thinking skills. Just like when teaching writing skills, reading skills, speaking skills, time management skills, etc. One of the biggest problems is we try to teach these skills without context. You learn some procedure or concept and you're supposed to just memorize it and apply it sometime later. Instead, we should start with the context. Making a game, for example, or creating an app or website that serves some relevant purpose or solves some real-world problem. This is the idea behind problem-based learning, service learning, and the like. It also can be more effective to teaching programming in the context of other school topics, like math, science, etc. Here's one example: https://edsource.org/2016/teaching-math-with-computer-programming-can-… And here are a couple of relatively recently summaries of some research in computer science education, but there's a whole field of research on the topic, with conferences and journals…
rdtsc · 2016-01-25
> 'Actor model' but it ended up being very misunderstood when implemented in C++, Java, etc, Yap here it is right from the horse's mouth, so to speak: https://computinged.wordpress.com/2010/09/11/moti-asks-objects-never-w… (see comments history) --- If you are doing “simulated data structure programming” rather than object oriented programming. One of my original motivations for trying to invent OOP was to eliminate imperative assignment (at least as a global unprotected action). “Real OOP” is much more about “requests”, and the more the requests invoke goals the object knows how to accomplish, the better. “Abstract Data Types” is not OOP! ... Many of Carl Hewitt’s Actors ideas which got sparked by the original Smalltalk were more in the spirit of OOP than the subsequent Smalltalks. Significant parts of Erlang are more like a real OOP language the the current Smalltalk, and certainly the C based languages that have been painted with “OOP paint”." --- There you have it folks, Erlang is more OO than C++/Java and C#. It is kind of a funny tidbit, good for sharing during meetups over beers. One interesting response to that I heard from a developer was "Well, it doesn't matter what Kay thinks anymore. C++/Java/C# got so popular and that is OO now officially".
mbrubeck · 2012-06-28
I think this is exactly how Apple sees it. Look at the specific language from the SDK agreement: "Interpreted code may only be used in an Application if all scripts, code and interpreters are packaged in the Application and not downloaded. The only exception to the foregoing is scripts and code downloaded and run by Apple’s built-in WebKit framework." This doesn't forbid third-party interpreters; what it really does is control distribution of code. All code that is run on an iOS device must be downloaded either through the App Store or through Apple's WebKit. This means there are no distribution channels on iOS that use their own non-Apple mechanisms to obtain and run software -- no Flash Player, no Chrome Web Store with NaCL, not even MIT's Scratch programming environment for kids (whose runtime was banned from the App Store in 2010 [1]). Web apps on iOS are less controlled than native apps, but Apple still gets to decide which capabilities to expose to them. This is one of the major things that gives Apple such tight control over the user experience, security, and evolution of the platform. [1]: http://computinged.wordpress.com/2010/04/15/apple-removes-scratch-from…

Keyboard shortcuts

/Search
j kNext / previous blog
EnterOpen selected blog
vVisit the blog site
fFollow / unfollow
lSwitch grid / list view
dSwitch dark mode
g hHome
g pTop posts
g tTopics
g fFollowing
g lLiked
g yHistory
g qFAQ
EscBack / close