Thursday, May 1, 2014

Software : In depth: Back to BASICs: the king of computer code at 50

Software : In depth: Back to BASICs: the king of computer code at 50


In depth: Back to BASICs: the king of computer code at 50

Posted:

In depth: Back to BASICs: the king of computer code at 50

The History of BASIC

Back in 1964, computers were enormous, expensive, and hidden away in air-conditioned rooms. And that was just fine, because they were also horribly complex: only scientists, mathematicians and highly trained technicians had any idea how to use them.

But then John Kemeny and Thomas Kurtz, two professors at Dartmouth College, New Hampshire, realised that it didn't have to be this way. That being able to write software could have real value for all kinds of people, if only there was a way to do it.

So they designed a new programming language, BASIC (Beginners All-purpose Symbolic Instruction Code), with general users in mind. It was small, simple, interactive and easy for just about anyone to learn.

Their students worked on the project, guided by Kemeny and Kurtz. It all went well, and the first ever BASIC language program was successfully executed at Dartmouth College on May 1st, 1964.

BASIC 50

That could have been it. BASIC might have stayed at Dartmouth, become outdated, shelved and forgotten.

But instead, it would go on to become the most widespread and popular programming language in the world.

The Early Days

Kemeny and Kurtz were years ahead of their time in realising the value of bringing programming to the masses.

Their really smart move came next, though, when they just gave it away.

Computer manufacturers were already looking for ways to make their systems more usable, and bundling BASIC proved a quick, easy and cheap way to do it. Top manufacturers like Hewlett-Packard, DEC and Data General were soon offering BASIC.

This early success soon began to snowball. More computers with BASIC meant more programmers becoming familiar with the language, driving demand for more computers to support BASIC.

PDP

Even better, there was increased use of these computers by students. A whole generation was beginning to realise that programming wasn't just work: it could be fun. Most famously, Bill Gates, whose computing life began when he devised a BASIC program to play noughts and crosses.

The hardware was still primitive, of course. In particular, users interacted with BASIC via teletypes, rather than screens. Everything had to be printed out, and this had some unexpected results. Check a 1964 BASIC manual for the maximum program length, for instance, and you'd be told "about two feet of teletype paper filled with BASIC statements is about it".

This technology wasn't very accessible, either. BASIC had quickly become popular, but was still only available on expensive mini and mainframe computers, so if you weren't a student - or employed by a big business - you would probably never even know it existed.

But then, in 1974, the Intel 8080 arrived. While earlier hobbyist CPUs were best described as "feeble", the 8080 was a real leap forward, around ten times faster than its predecessors, and enough to power a genuinely useful home computer.

Basic 50

Finally, this all came together in the Altair 8800. This early computer was powerful, for its time. It had all kinds of hardware options. And it came with an Altair BASIC interpreter, developed by Bill Gates, Paul Allen and Monte Davidoff of Microsoft. The world was about to change.

BASIC everywhere

Home computers were soon selling in huge numbers. There would be many different models and variations, but there was one very common feature: almost all of them had BASIC as the programming language of choice.

The TRS-80 (Tandy/Radio Shack, Z-80 CPU) arrived in 1977, with its own custom BASIC in a ROM.

Commodore used Microsoft-sourced BASIC in the Pet, the Commodore 64, even the early Amigas.

Then there was the Amstrad CPC, the Acorn Atom, various Atari models, the Oric, and everything Sinclair ever produced (ZX80, ZX81, ZX Spectrum, Sinclair QL). Even Apple joined in with its own Applesoft BASIC, supplied by Microsoft and included with the Apple II computers.

BASIC began to be used in schools everywhere. Computers like the Research Machines 380Z and BBC Micro meant that students could start learning a few programming basics, without any need for access to some massive mainframe. And the emphasis on education made it much easier to persuade their parents to buy a computer for home use (even if was mostly used to play Frogger, Football Manager and Space Invaders).

BASIC 50

BASIC's popularity soared. Early computer magazines would publish tips, tutorials, even the source code to entire programs. Later they would have cassette tapes attached to the front with even more freebies.

But the real tipping point came in 1981, with the release of the IBM PC. It came with BASIC both on ROM (BASICA) and disk (GW_BASIC). Massively popular, it lead to MS-DOS becoming the standard operating system for businesses (and many home users) just about everywhere. And with Microsoft including a version of BASIC with DOS, and Windows, right up to Windows Me, the language would be accessible to everyone for the next 20 years.

Standards? What standards?

BASIC was clearly a massive success, spreading much further than creators Kemeny and Kurtz could ever have believed. But this also lead to problems, which began to undermine the whole language.

The original decision to effectively give BASIC away, for instance, was certainly a marketing masterstroke. But it also meant that the language no longer had a clear direction. Instead, a host of different companies produced their own custom versions, often very cut down due to the hardware limitations of the time. Some were very poor, and if you wrote a program for one BASIC, there was no guarantee it would run on another.

Expectations were changing, too. Early BASIC games were horribly limited; "Star Trek" was played in text mode, with stars represented by a *, Klingon ships with +K+ and star bases with <*>. But people accepted this because they only had a teletype to work with, and in those early they were amazed the program worked at all.

Star Trek BASIC

Fast-forward 10-15 years and it was very different. Computer games now had graphics (if blocky), sounds and music. There was no chance that the average person could produce anything to compete. And so people became more interested in finding and using third-party software than writing entire programs themselves.

BASIC wasn't always popular in the academic and professional world, either. Edsger W. Dijkstra, Professor of Computer Science at University of Virginia famously wrote: "It is practically impossible to teach good programming to students that have had a prior exposure to BASIC: as potential programmers they are mentally mutilated beyond hope of regeneration.

But while this was a little harsh - to put it mildly - even Kemeny and Kurtz weren't happy with the situation. They felt that the some of the cut-down interpreted versions had strayed far from their original vision. In 1983 they decided to fight back by founding their own company, True BASIC, to show the world how the language should be developed. It was a little too late, but the company is still around today.

Updating BASIC

With its attention focused on MS-DOS, Microsoft were slow to see the problems with BASIC, and that a core language devised in 1964 just wasn't up to the challenges of 80's computing.

This started to change in 1985, with the first release of QuickBASIC. The new product extended GW-BASIC with more graphics support, better structuring, and - at last - a compiler. Developers could now produce EXE files, greatly improving performance.

The real breakthrough came in 1991, though, with the first release of Visual BASIC (VB). The old text-based approach had finally disappeared, and users could instead create Windows GUIs just by dragging and dropping objects onto a "form", setting their properties, and writing code for them.

Visual BASIC

This was a revolution for most BASIC programmers. They didn't have to create their own custom GUI any more, as VB would do it for them. Extensions to the language, access to the Windows API and a range of custom add-ons and extensions made the language more powerful than ever before.

VB was a massive success, even in the professional programming world (Visual Basic experience became a genuinely marketable skill), but it still had issues. In particular, the language made it difficult to use more advanced Windows features (multi-threading, for instance), and a lack of support for object-oriented programming meant that many still didn't take it seriously.

Microsoft hadn't yet finished, however, and its final move came in 2001, with the release of Visual Basic.NET. This caused some resentment by changing many language constructs, dropping others entirely, and overall becoming much more difficult to learn. But a new object-oriented approach and easy access to .NET libraries meant that Visual Basic was finally competitive with other languages, and it's still available today as a part of Microsoft's Visual Studio.

Where next?

BASIC had an amazing influence in its early years, and played a key part in bringing easy, affordable home computing to the masses.

It couldn't maintain that level of success, of course, and that's really no surprise. The problem that BASIC was designed to solve - the need to bring simpler programming tools to the masses - just doesn't exist any more.

Small BASIC

This isn't the end of the story, though. BASIC is still a great language for developing all kinds of software. Malwarebytes Anti-Malware, HiJackThis, PDFCreator, photo editor PhotoDemon and business CRM Vtiger are all popular and very capable programs - but they were all created in VB6. It may be 16 years old, but it's still influential, even today.

You're just a beginner Microsoft has tried to recapture the original spirit of the language with Small Basic. Aimed at children, it's very simple - with only 14 keywords - yet can still be used to, say, build a Tetris game, or download and display an up-to-date weather map.

If you're nostalgic for some early flavour of BASIC, there's a good chance it's available somewhere. There are multiple BBC BASIC versions, a GW-BASIC emulator, an extended Sinclair BASIC, a 64-bit QBasic, the QuickBASIC-like FreeBASIC, even a TinyBASIC for the Raspberry Pi.

Or, if you need something more professional, the free Visual Studio Express provides all the tools you need to build everything from a simple desktop program to a shiny new Windows Store App for Windows 8.1.

BASIC has had more than its share of criticism. But even after 50 years it's still here, with something to offer everyone - and it's not going away any time soon.

This posting includes an audio/video/photo media file: Download Now

No more trawling settings as Windows 8.1 adds natural language search

Posted:

No more trawling settings as Windows 8.1 adds natural language search

Microsoft has announced an update to the Bing-powered Smart Search feature in Window's 8.1 that aims to make it easier for users to find hard to reach settings on their PCs.

The update, which will roll out in the next couple of weeks, will enable users to type instructions like, 'My screen is too bright' rather than dig around for the display settings.

Likewise, if users want to delete an app or add a printer, for example, they can type in those commands to be taken directly to the requisite settings menu.

The company hopes the inclusion of 'natural language understanding' will save users time and effort needed to delve deep into menus before finding what they want.

Smarter search

In a post on the Bing blog, the company explains: "Based on the most common tasks people perform on Windows 8, we are taking steps to allow Smart Search to showcase results based on natural language understanding.

"Now when I search for 'install a printer', Smart Search will show me that the function resides within 'Device Settings' so I can take action with a simple click."

Bing Smart Search was introduced alongside Windows 8.1 in October as a universal search tool for documents, apps, photo albums, cloud files and favourite websites.

Like or dislike, Facebook announces 'Audience Network' mobile ad system

Posted:

Like or dislike, Facebook announces 'Audience Network' mobile ad system

During Facebook's F8 developer conference, Deb Liu, product marketer for Facebook announced that the new mobile ad network, called the "Audience Network," will be rolling out in the coming months.

The Audience Network is a tool for devs that allows Facebook to help with selling and targeting ads, payment and measuring engagement.

So far, 60% of the company's revenue comes from mobile ads and $3 billion (about £1.7b, AU$3.2b) of Facebook's transactions come from ads alone.

The social network has dabbled with various ad platforms before and tested a newer version of the ad network earlier this year, but it looks like the Audience Network is the final step and is ready for developers, meaning Facebook users will start seeing more ads in their mobile feeds soon.

Facebook

Ads all day, every day

Liu noted that the best way to engage Facebook users involves "ads that are integrated, not disruptive."

With Facebook's "world class targeting system" also in play, it's likely you won't see ads that aren't relevant to you. Similar to how Instagram's photo ads work, Facebook's system may actually not be too intrusive despite being displayed front and center in the news feed.

You can also look forward to the three different types of ad formats showing up on Facebook mobile: banner, interstitial and native.

Facebook ads

If more ads will just make you angry, at least Facebook is coming out with a new way to login and new mobile functions like the ability to (finally) like something on a mobile device.

Google fires shot at productivity with standalone Docs, Sheets mobile apps

Posted:

Google fires shot at productivity with standalone Docs, Sheets mobile apps

Microsoft recently upped the ante for mobile productivity with the debut of Office for iPad, and today Google is responding with a pair of its own apps for editing and creating documents or spreadsheets from virtually anywhere.

The Google Official Blog announced the release of Google Docs and Google Sheets, a pair of free standalone mobile apps for Android and iOS which allow smartphone and tablet users to stay productive while on the go.

Now available from Google Play (Docs, Sheets) or the App Store (Docs, Sheets), the free Sheets and Docs apps allow owners of mobile devices to find, edit and create files stored on Google Drive.

Best of all, Google has baked offline support into each app, allowing not only viewing but also creation or editing of documents and spreadsheets even when an internet connection isn't available.

Presentations incoming

Over the next few days, Google will prompt Drive users to download the new Docs and Sheets apps whenever they create or edit files, although the Drive app itself can still be used to view and organize documents and spreadsheets.

The standalone Docs and Sheets apps also make it easy to find recently edited files, presenting them again at launch to cut down on the amount of time needed to scroll and search for them.

Google also hasn't forgotten about its own cloud-based presentation software, promising that a standalone app for Slides will be "coming soon," without elaborating on how soon it might arrive.

The launch of dedicated Docs, Sheets and Slides apps will certainly be viewed as a shot across Microsoft's bow, given the Windows maker's recent Office for iPad apps require a paid Office 365 subscription to do anything more than view existing files.

  • Find out the best tablet to use with your new Google Docs and Sheets apps!

No comments:

Post a Comment