Archive for January, 2012

Finally fixing the null pointer misfeature

January 13, 2012

My current gig is working in C/C++ land which is a place I haven’t been in much for the last decade or so and I hadn’t noticed that C++11 was going on. Yesterday I read about the changes and most of them don’t interest me but the new “nullptr” is big for me.

C/C++ uses lots of pointers and plays fast and loose with them. The “null pointer” has been the concept of a pointer that doesn’t point at anything. In traditional C and C++ the null pointer has been the integer value 0 so you’ll see lots of code setting pointers to 0 or comparing pointers to 0 which is ugly and not type safe. Having an explicit nullptr will clean up a lot of code.


Bye Bye Paper Textbooks

January 12, 2012

The dead tree incarnation of textbooks is going away. Students are already using ebook versions of textbooks that provide all of the information in the print versions. But that’s not the biggest reason that textbooks will evolve. Ebooks today are mostly static presentations. The future is dynamic presentation.

Let’s say the subject is the history of the European colonization of the Americas. Imagine a map with North and South America which is animated by colors showing where each of the European countries established settlements starting in 1492 and changing over time. Now add a slider control so the student can choose any year and see the distribution of settlements for any given year. Touch the map and text will come up associated with that region.

In a physics textbook every diagram could at minimum be replaced by an animation. Beyond that many diagrams could have controls that let you change some parameter and watch what happens. Printed textbooks and most current ebooks can’t do these things.

Things are changing in ebooks. The EPUB 3 standard calls for Javascript support. Or you could just write iOS/Android apps and call them books.