This is a great essay on what's wrong with Pascal. But really, it's a great essay on what are some of the nice touches of C that makes it such a good language.
Tuesday, February 12, 2013
Monday, February 04, 2013
Universal Programming Literacy
My answer to a Quora question : What would happen in a world where almost everyone is programming literate?
How might such a world (of universal programming literacy) come about?
Most likely from a continuing trend to automate the way a lot of work gets done, and then people would learn programming as a way of engaging with that world.
For example, instead of spending half an hour in the supermarket or even 10 minutes browsing a supermarket site on the web, you might be able to compose an augmented shopping list on your phone.
6 Apples
4 bread rolls
Could become :
"Apples".
prefer("Pink Lady" or "Fuji").
take(6).
otherwise.take(4)
"Bread rolls".
only("Wholemeal").
take(4).
prefer("Top=Poppy Seed")
Deliver("Wednesday")
Order_from(
priorities("Waitrose","Asda","Sainsbury","Tesco")
)
Similar little languages can be developed for most activities. So I'd guess that we'll all be writing little scripts for robots or large automated services. There's an assumption that people must prefer navigating rather laborious graphical interfaces to get stuff done. But if they were more programming literate they may learn to use and love such small scripts instead.
Marcadores:
littlelanguages,
scripted life,
software eats world
Wednesday, December 26, 2012
Social Media 2012
My comment on Alex's blog :
Well, you already know but I still think wiki has a future, as pointed to by Smallest Federated Wiki. There are some flaws / issues with SFW, mainly I think because not enough people are working on it, but it’s still the signpost for how wiki could evolve.
Would still love to see you and other UseMod / OddMuse people look at ways to engage, even if you don’t switch over.
2012 is the year when it just became more and more clear that we need our own space and shouldn’t be dependent on Fb / Tw / G+ etc.
Fb / Tw / G+ offer two compelling things : 1) an aggregate river of stuff from people we care about, 2) really easy transclusion from various rich media sites.
We could have a distributed river architecture if we took RSS and some kind of pubsub architecture (eg. RssCloud) seriously. SFW has made transclusion protocols central to its philosophy. If we pick up on both, figure out how to get the most important things we get from the mainstream working smoothly, we can create a compelling alternative on our terms. And one of the interesting, overlooked, facts about G+ is that it showed that significant numbers of people are still willing to experiment with alternatives. As long as you can get a critical mass of around 20 people you care about to use it, G+ is as valuable as anything else. You don’t need 1 billion users. You aren’t trying to take over the world at this point, just to have a syndication / discussion architecture which isn’t owned by THEM.
Marcadores:
blogging,
distributed authoring,
feeds,
oddmuse,
rss,
smallest federated wiki,
walled river,
wiki
Wednesday, December 19, 2012
Recursive Drawing
Saturday, November 24, 2012
Vi Hart on Making Her Videos
How To Make A Video About How To Make A Video About How To Make A Video About How To Make a Video...
There's something about Vi Hart's recursive video about how she makes her videos which reminds me strongly of the Lispish ideal of having the Lisp interpreter available at write-time, compile-time and run-time.
There's something about Vi Hart's recursive video about how she makes her videos which reminds me strongly of the Lispish ideal of having the Lisp interpreter available at write-time, compile-time and run-time.
Friday, November 16, 2012
Saturday, October 27, 2012
Do The Simplest Thing
Congratulations to Bill Seitz on launching his Personal Finance startup / project.
Sunday, October 21, 2012
My Simulations
Over the years I've done a few agent based simulations to look at questions that interest me.
Here's a quick Bootstrap page to get at them.
Here's a quick Bootstrap page to get at them.
Tuesday, October 16, 2012
Dog : A Social Language
Dog seems to be a little language for writing social software.
Initial thoughts :
Big question is what it compiles to. It's about time we had a programming language that compiles a single program down to parts that run on both server and clients, in a really easy and transparent way.
Building in knowledge of protocols like http and json and making services like twitter at least members of the standard library is a good idea.
Like most programmers, I'm sceptical of the "easy English-like" nature of it. We've had plenty of time to learn that what's hard in programming is the logical thinking not the strange syntax. (Update : See my Quora answer)
But if Dog can become a little-language which makes it easy to configure and administrate social software back-ends then it will be very useful. Particularly if there are ways of compiling the same program down to multiple back-ends (Django, Rails, Chicago Boss etc.)
Initial thoughts :
Big question is what it compiles to. It's about time we had a programming language that compiles a single program down to parts that run on both server and clients, in a really easy and transparent way.
Building in knowledge of protocols like http and json and making services like twitter at least members of the standard library is a good idea.
Like most programmers, I'm sceptical of the "easy English-like" nature of it. We've had plenty of time to learn that what's hard in programming is the logical thinking not the strange syntax. (Update : See my Quora answer)
But if Dog can become a little-language which makes it easy to configure and administrate social software back-ends then it will be very useful. Particularly if there are ways of compiling the same program down to multiple back-ends (Django, Rails, Chicago Boss etc.)
Tuesday, October 02, 2012
Project Schema
This is awesome : Project Schema combines mind-mapping with management of parts of a CAD model.
Sunday, September 30, 2012
Command Line In Web Apps
O'Reilly Early Release
I didn't know about the O'Reilly Early Release program. Basically, it seems you can buy a book as it's still being written, and give feedback while receiving updates and rewrites.
Nice idea. I'm tempted to buy some of these.
Nice idea. I'm tempted to buy some of these.
Saturday, September 29, 2012
Programming With A Mind Map
Using a MindMap to store documentation.
Actually it sounds like Freemind is much like an outliner, in that you can drive it with the keyboard and collapse / expand etc.
I wonder how using this compares to LEO.
(Hat-tip Other Michael)
Actually it sounds like Freemind is much like an outliner, in that you can drive it with the keyboard and collapse / expand etc.
I wonder how using this compares to LEO.
(Hat-tip Other Michael)
Marcadores:
augmented programming,
mind mapping,
outliner,
outlines
Friday, September 14, 2012
JSON / RSS
Dave Winer is considering an official(?) JSON flavour of RSS.
I just want to say here that I like RSS, for what it is, and what it does, and I like JSON to actually work with, because parsing XML is still a faff. So it gets my vote.
I just want to say here that I like RSS, for what it is, and what it does, and I like JSON to actually work with, because parsing XML is still a faff. So it gets my vote.
Tuesday, August 14, 2012
Smart Notebooks
An intriguing Kickstarter project.
Seems that Smallest Federated Wiki would be a good starting point for this.
Seems that Smallest Federated Wiki would be a good starting point for this.
Tuesday, August 07, 2012
Planet Building
As I mentioned in my previous post, I'm rather taken with Planet Planet, the old-skool Python based RSS aggregator that outputs flat HTML.
I used it to build my wonderful Future Manufacturing river. And I want to use it for more things. So I've created a small script to make installing Planet ultra-easy on a linux server.
Four steps and you're rolling :
# clone it
git clone https://github.com/interstar/PlanetBuilder.git planets
# make the planet
cd planets
./planets.sh MYPLANET
# add feeds
emacs MYPLANET/fancy/config.ini
# defaults have been set-up, just change and add the feed URLs and names at the bottom of the config.ini file and set your name and contact details (earlier in the file)
# edit the crontab
crontab -e
# and add the following line or suitable variant.
53 * * * * /PATH/planets/MYPLANET/refresh.sh
# note that the line with the correct value of PATH will have been given to you when you ran the create script
Your automatically generated aggregate will start being available at MYPLANET/index.html
I used it to build my wonderful Future Manufacturing river. And I want to use it for more things. So I've created a small script to make installing Planet ultra-easy on a linux server.
Four steps and you're rolling :
# clone it
git clone https://github.com/interstar/PlanetBuilder.git planets
# make the planet
cd planets
./planets.sh MYPLANET
# add feeds
emacs MYPLANET/fancy/config.ini
# defaults have been set-up, just change and add the feed URLs and names at the bottom of the config.ini file and set your name and contact details (earlier in the file)
# edit the crontab
crontab -e
# and add the following line or suitable variant.
53 * * * * /PATH/planets/MYPLANET/refresh.sh
# note that the line with the correct value of PATH will have been given to you when you ran the create script
Your automatically generated aggregate will start being available at MYPLANET/index.html
Marcadores:
feeds,
future manufacturing,
planetbuilder
Monday, August 06, 2012
Walled River
Apple join the war against RSS.
We need to defend the principle of a platform independent / open feed of news items from all the companies like Facebook, Twitter, Google and Apple who have seen the future as feeds insided their own proprietory walled "gardens".
Not sure if a garden is the right metaphor for a feed routing system, maybe "walled river"?
Something like this? :-(
Hat-tip Scribe.
Open rivers of news are wonderful things. Recently I've started using the venerable Planet feed agregator to make some public planets (rivers) such as this mind-boggling "Future Manufacturing" one. Glance at that and see exactly how awesome open RSS is. And how it can be way more compelling than the constrained Twitter or your riddiculously cramped Facebook wall. Look at a torrent of exciting information that can actually "breath", where text can be as long as it needs and where pictures are wide-screen rather than crammed into a cage designed to make you look at adverts.
We need to defend the principle of a platform independent / open feed of news items from all the companies like Facebook, Twitter, Google and Apple who have seen the future as feeds insided their own proprietory walled "gardens".
Not sure if a garden is the right metaphor for a feed routing system, maybe "walled river"?
Something like this? :-(
Hat-tip Scribe.
Open rivers of news are wonderful things. Recently I've started using the venerable Planet feed agregator to make some public planets (rivers) such as this mind-boggling "Future Manufacturing" one. Glance at that and see exactly how awesome open RSS is. And how it can be way more compelling than the constrained Twitter or your riddiculously cramped Facebook wall. Look at a torrent of exciting information that can actually "breath", where text can be as long as it needs and where pictures are wide-screen rather than crammed into a cage designed to make you look at adverts.
Marcadores:
feeds,
future manufacturing,
rss,
walled river
Subscribe to:
Posts (Atom)

