The Mac Observer

Editorial

An Exercise in Whimsy: Maximum Mac Leverage

TMO Talk (5)

Computers are built on the concept of abstraction. Machine language led to assembly language, which led to higher level languages. APIs organize functions. How far can we go? Have we reached the maximum leverage a Mac can give us?

This article falls under the label of an editorial, but it's really an exercise in whimsey and playful thinking. Follow me along for a minute.

MacBook Pro

MacBook Pro: CPU, about 12-16 gigaflops, GPU, about 125 gigaflops

 

I'm sitting here in front of a computer that can execute 100 million sines in 20 seconds. And that's in Perl. It would probably be faster if I wrote some compiled C code. A computer with that kind of speed and size, if taken back in time, would have led to World War III in 1975.

And yet, after all these years of software development, I wonder if we're really getting the maximum level of abstraction out of our personal computer, whether it's a Mac or a PC.

I mentioned in the introduction that machine language led to assembly language, then something like C, and some higher level compilers are written in C. But the process usually stops there because the current, popular language is then used for a different end. For example, a programmer comes up with a viable commercial idea and then utilizes the current tools, say Objective-C and Cocoa Frameworks, to implement the idea. The level of abstraction stops unless the author is building yet another tool, like iWeb, to construct an other level of abstraction.

The question I want to pose is:

Given the current, terrific level of hardware technology and software tools, how far can one take the levels of abstraction, for the sake of abstraction power, to build the ultimate tool? I call it Maximum Mac Leverage.

I am familiar with mind mapping tools, like TheBrain, but that's not quite what I'm looking for because that's a knowledge organizer, not a problem solver. I'm thinking about a broader, problem solving tool, that allows human beings to express a problem in an elegant way and invoke the computer to come up with a fast answer. For example,

Excel Spreadsheet is to accounting as ??? is to general problem solving.

Some might argue that ??? is best implemented in 2009 as:

  • Java
  • Microsoft Visual BASIC
  • REAL's REALbasic
  • Python

However, I'm thinking of at least one level higher of abstraction, likely more, because mastery of any of the above requires some hard-earned, detailed skills with, for example, (ycch!) CLASS_PATH, an IDE (Eclipse, Xcode) and the detailed syntax of a high level programming language.

We're not there yet

One example that comes to mind is Apple's Grand Central in Snow Leopard. Managing safe threads has been too big a challenge for programmers who are on a viciously tight ship schedule. The philosophy is that if it has all the features and compiles, QA it. If it passes QA, ship it. Grand Central allows the programmer to work at one higher level in the APIs to launch threads, but not get bogged down in the messy details of the low-level API. That will keep the programming job manageable, but extract more power from the hardware.

What if a research project went about the business of identifying all the Cocoa APIs and building a general, overlying structure on top of that as well? And then keep going, with a mind towards an eventual GUI that's useful for general problem solving? How far could that process go?

Right now, for certain classes of problems, I pull out Apple's Numbers. For others, I'd use PCalc. For yet others, I might use Perl. I have a myriad of tools, all designed to solve a special class of problems that must be nursemaided into proper form before I can construct a solution.

Is there a way to characterize a wide range of problems into a more general problem solving tool? I know I'm being vague here because I don't have the answer. I'm having a hard time just posing the question.

I'm in whimsy mode. But I'm betting someone out there is thinking along the same lines.

Post A Comment or Log-in. Need an account? Register here.

4 Observer Comments

What you’re asking for here is software to emulate the brain. Software that learns / teaches itself. The reason you’re struggling to identify the answer is becasue the problem can’t be defined. The minute the solution becomes too generic, one struggles to define the problem and vice-versa

   Actions John Martellaro said on February 4th, 2009 at 4:26 PM (Edited: 07/29/2011 1:39 PM):

I’m not really thinking about software that teaches itself.  I’m just fantasizing about a more clever way to define, in a broader way, the class of problems we try to solve and attack them with a higher level of abstraction.

For example, in the distant past we used flat-file databases.  Then the concept of a relational database emerged, fully-baked, which uses a higher level of abstraction to solve the database problem properly. I suppose, at one point, there were people who thought flat-files were the end of database evolution.

-J.M.

Well, to be honest Im really excited about Grand Central and OpenCL becasue its a step in the right direction.

Im not entirely sure there can be a “one solution fits all” approach. Having said that though, Im sure there are smarter and easirer ways to solve problems that we currently face today.

I still believe though, that ultimately well have our problems solved by neural network / fuzzy logic. Or at least it will aid us in getting to the solution a lot faster.

What no computer can give us is brains.  We will always have to use our minds to think a problem through, divide it into smaller ones, then try to solve them one at a time.

Those who try to turn computers into genies that answer their questions are doomed to get fuzzy answers, not because of the computer but of the questions asked.

Post A Comment or Log-in. Need an account? Register here.
 

Recent Headlines - Updated May 26th

Sat, 10:00 AM
MacOS KenDensed - MacOS KenDensed: Apple’s Patent Lawsuit & Antitrust Shuffle
Fri, 5:58 PM
News - Sotheby’s to Auction Steve Jobs Atari Memo (Photo Gallery)
5:42 PM
Free on iTunes - 3 Free iOS Apps for News Hounds
3:00 PM
Rumor - Nest Thermostat Reportedly Coming to Apple Retail Stores
2:40 PM
Particle Debris - The TV Industry’s Dreadful Little Secret
2:33 PM
News - Mobile Devices Account for 20% of Web Traffic in US, Canada
12:49 PM
News - Apple Now Offering “Free App of the Week” for iOS
12:21 PM
News - Tim Cook Declines $75 Million Dividend Payout
11:25 AM
News - Absinthe 2.0 Provides Untethered Jailbreak for iOS 5.1.1
11:09 AM
Quick Look Review - F18 Carrier Landing (iOS) is a Boatload of Fun
10:51 AM
TMO Appearances - Jeff Gamet talks Cool Apps & Accessories on Not Another Mac Podcast
10:12 AM
Hot Forum Topic - Forum Poll: Which is Your Favorite Photo Sharing Service?
 

The Mac Observer Reader Specials

  • Macsales for the Right Mac Memory. Easy to Use Online Guide for no Guesswork! Mac Pro up to 128GB, iMac up to 32GB. MacBook/MB Pro, & Mac mini up to 16GB. - Macsales.com
  • Mac RAM Upgrades: MacBook Pro 16GB kits $475, 8GB Kits for $119.99! iMac 16GB RAM Kits (4x 4GB) for $229.99! Mac Pro Memory 32GB Kit for $399.99, 64GB Kit for $889.99! Mac Hard Drives 2TB Seagate SATA II for $249.99! Click Here!
  • Macpokeronline.com If you're using a Mac, then you've gotta check out PokerOnAMac.com. Online casinos and poker rooms are literally giving away cash and the casino sites at Poker on a Mac do the unthinkable, they actually reward! Join today, the download is free!
  •  Looking to find online casinos for mac? We can help you find the best real money casino sites where you can play your favorite casino games including blackjack and slots.

Apple Stock Quote (AAPL)

Loading...

Hot Topics

TMO Express

Join the TMO Express Daily Newsletter to get the latest Mac headlines in your e-mail every weekday. Find out more!

Top Deals From DealBrothers.com

Recent Features

Support The Mac Observer

We noticed you may be running AdBlock on your computer. It takes real money to run this site and to deliver the news, tips, and opinions you love to read.

If you wish to block the ads that pay for the creation of our content, we ask that you instead support TMO Directly, either with a $5 monthly recurring contribution, or a one-time donation of any amount of your choice. Thanks!

Subscribe with Paypal Donate with Paypal