Hacker News new | past | comments | ask | show | jobs | submit login
Our Programs Are Fun to Use (codinghorror.com)
53 points by robin_reala on March 9, 2015 | hide | past | favorite | 3 comments



It amazes me how blind people who consider the web browser a great platform for simple, fun teaching software are to the fact that the browser itself and typical operating systems aren't simple and fun at all and cannot be easily hidden from the user. They hit you in the face with a multitude of icons, windows, menus, annoying animated effects in various tool- and menu bars. It's in stark contrast to tablets and smartphones, where users just need to unlock and press an icon to use an app (that will take over the whole display). The (desktop and to some extent mobile) browser is just a terrible platform for the user.


I have been doing something a bit related to this. I've been approaching programming as teaching. As I read books, I try to write code to accompany them. If they have exercises, I write code that will solve them. It certainly takes me to different challenges, things I don't normally face when writing typical applications. I especially enjoy doing this with completely non-computer-related textbooks, such as physics or chemistry books. In teaching the computer how to do these things, I most definitely benefit in understanding the tasks better myself.

Of course, when I do this I face some common hurdles. For instance, parsing whatever representation is used (equations or chemical formulas or whatever). In an 'interactive book' situation, I could see approaching an exercises section with a proper parser made available, so the 'reader' could easily manipulate the important portions of the problem. Other things come up too, such as using clumps of data. Whether a list of atomic masses of a mole of an elements atoms or proportional relationships between various factors, those things ought also to be made available in easy-to-use data structures.

I could see the IPython Notebook environment growing in this direction easily. People are already starting to use it as a platform for putting together entire books with a great deal of interactivity built in. You execute the code as you 'read' and see what it does step by step. In my opinion it should replace any scientific papers presenting any sort of data analysis as soon as possible. For whole-book projects, though, the platform needs some work. And the creators are aware of this and intending to fix issues and add features to support this. Read through their Issues page on Github sometime and you'll see authors really pushing the bounds of what the Notebook format can do and developers responding.


Do you still do this? I'm currently going back to school for a degree in CS and was thinking about doing something like this for my Calculus/Stats class... maybe with Highcharts or even D3.

Do you have any recommendations if I take this approach?




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: