Category: Software

  • John Backus, RIP

    While we associate the older programming languages — and business models — with the old economy, John Soat writing in InformationWeek reminds us everything old is new again…

    John Backus died. Backus, 82, was the originator of the Fortran computer programming language. Generally considered the first high-level language, Fortran was a lot easier to use than the machine code computer programmers had to wrestle with before Fortran came along. “Much of my work has come from being lazy,” Backus was quoted as saying. The logic of that statement is breathtaking, and makes him one of my personal heroes.

    Fortran is still being used today, 53 years after its inception. And why did Fortran become such a widespread standard? Because it was free–as in free beer. IBM gave away the Fortran compiler with every IBM 704 mainframe computer, which was how software was distributed in those days. Free.

  • Do Publishers Underestimate Techies?

    Headline: Killing Page View is Suicide Publishing experts have proclaimed that the death of the ‘page view’ is near. This consensus is heated by the adoption of a new Web development technique called AJAX, but AJAX holds hidden dangers for publishers.

    Or, we could just use mod_rewrite to create unique URLs for each AJAX page. Problem solved. (Or, we could focus on possibly more useful metrics, like unique visitors, revenue generated, ads viewed…)

    If Google has taught us anything, it’s that throwing a bunch of PhDs and engineers at hard technical problems can yield great results. The technical problems aren’t the hard ones, it’s the human problems that are hard.

  • The Social Media Bandwagon

    So big companies are adopting social media. As they take a shortcut by buying software from BigCo-friendly vendors like Pluck, one has to wonder how long it’ll take before customers experience social media fatigue.

    And, in the rush to install the software, I wonder if they even think about being in competition with Blogger, Flickr, and the other quite-good industry leaders? In the past I’ve seen many efforts to consider vertical search just to realize that everyone doing search is competing with Google. I wonder if the same realization will come with social media, or if social media will simply become the new paradigm for most media?

  • Hardware companies will learn to be software companies


    In the past I’ve observed that as processor speed increases, software replaces dedicated hardware. For example, in music or video production programs like GarageBand and Final Cut Pro and a stock Macintosh can replace dedicated rack systems and DSP chips.

    Now with Web 2.0-ish advances on the Internet, we can go further and say as bandwidth increases, remote applications replace locally installed applications.

    Yamaha has developed a beautiful prototype of a device that “allows everyone to play music intuitively.” But the simplicity of the user interface begs the question of why isn’t it implemented in software (i.e. why can’t I get my hands on this now?). I know the obvious answers, and I appreciate a great hardware UI and portability, but believe we’ll only gain more utility from network-based software applications as people adopt them. It makes even more sense when you see someone make something that looks similar and is a lot of fun, like Ollie Rankin’s Ten or Eleven (imagine this on a tablet PC).

  • Programming language design

    For some reason I’m fascinated by programming language design. One reason is that innovation can happen at the tools level, and the tools that fuel software are undeniably important.

    In the hands of a great author, writing on this topic weaves together the technical, the social and the personal forces at work. One of my favorites is Worse is Better, an analogy that applies beyond programming languages. Another is Paul Graham and his work on Arc.

    In The Periodic Table, Primo Levi tells a story that happened when he was working in a varnish factory. He was a chemist, and he was fascinated by the fact that the varnish recipe included a raw onion. What could it be for? No one knew; it was just part of the recipe. So he investigated, and eventually discovered that they had started throwing the onion in years ago to test the temperature of the varnish: if it was hot enough, the onion would fry.

    We’re going to try not to include any onions in Arc

    An exciting part about Graham’s work is that he starts by admitting Unix/C has won. Then he proceeds to set his goal even higher. This is the spirit of design, of always turning whatever situation you have now into something even better.

  • Lanier Interview

    Coding from Scratch: A Conversation with Virtual Reality Pioneer Jaron Lanier

    …if you make a small change to a program, it can result in an enormous change in what the program does. If nature worked that way, the universe would crash all the time. Certainly there wouldn’t be any evolution or life. There’s something about the way complexity builds up in nature so that if you have a small change, it results in sufficiently small results; it’s possible to have incremental evolution…But in software, there’s a chaotic relationship between the source code…and the observed effects of programs…

    What advice do you have for developers just starting out?

    There’s a lot I would say. If you’re interested in user interfaces, there’s a wonderful opportunity these days to push what a user interface can be. If a user interface gives a user some degree of power, try to figure out if you can give the user more power, while still keeping it inspiring and easy to use. Can you do it? For instance, could you design a search engine that would encourage people to do more complex searches than they can do on a service like Google today, but still do them easily? I haven’t seen a really good visual interface, for instance, for setting up searches on Google. Could you do that? Could you suddenly make masses of people do much more specific and effective searches than they currently are doing just by making a better user interface?

  • Chimera UI Development

    Chimera 0.4 is a browser for MacOS X built on top of Mozilla…

    The cross-platform UI will be replaced with native Cocoa widgetry (such as customizable toolbars and a drawer for the sidebar). The plan is to produce only a browser (no other apps!), and to keep the UI as simple and as clean as possible.

    I’ve always thought open source development doesn’t lend itself to quality UI design. But in this case they can draw from 1) years of web browser conventions, and 2) the MacOS X human interface guidelines. I’m looking forward to the results.