Channels ▼

Mike Riley

Dr. Dobb's Bloggers

techBASIC 2.0 Now Available

April 24, 2012

Dr. Dobb's readers may recall my initial review of techBASIC 1.0 for the iOS platform. techBASIC Developer Mike Westerfield took my earlier criticisms seriously and addressed a majority of them in this new release. techBASIC 2.0 now supports the camera on the iPhone, iPad, and iPod Touch, as well as the rudimentary UI widgets such as buttons, list views, sliders, spinners, and pickers. These additions make techBASIC a really powerful platform for students and individuals interested in learning how to program using Post PC hardware.

More Insights

White Papers

More >>


More >>


More >>

The addition of user interface controls adds a whole new dimension to techBASIC interpreted code. Applications can now be easily outfitted with a UI that can rival relatively simple, native iPhone and iPad applications. Byteworks, the company responsible for techBASIC, even posted adetailed and very helpful description of these new UI elements along with code examples that show how easy it is to incorporate them into techBASIC programs. There is also an accompanying YouTube video showing these controls in action.

Unfortunately, the app cannot compile code to a native iPhone app and, as such, is hindered by performance issues for anything requiring heavy computation or intense graphic manipulation. Of course, these limitations are imposed by iOS, not by the potential of techBASIC. But given that techBASIC is educationally-oriented and not currently commercial application development-focused, these iOS-imposed restrictions are not that much of a hindrance when coding and running apps with photographic, sensor-capable, and network-enabled interactivity.

Now that techBASIC has made its mark on the iOS platform, I'd like to see Mike take this extraordinary interpretive application and port it to the Android platform where access to the file system, the creation of background services, and (as we've seen with the Android Java IDE) the compilation to native application code might be possible. But for now, any educator or BASIC language enthusiast with an iPad should check out techBASIC 2.0. It could be the tool that launches the careers of a future programmer who might one day sell a camera app to a social media company for a billion dollars.

Related Reading

Currently we allow the following HTML tags in comments:

Single tags

These tags can be used alone and don't need an ending tag.

<br> Defines a single line break

<hr> Defines a horizontal line

Matching tags

These require an ending tag - e.g. <i>italic text</i>

<a> Defines an anchor

<b> Defines bold text

<big> Defines big text

<blockquote> Defines a long quotation

<caption> Defines a table caption

<cite> Defines a citation

<code> Defines computer code text

<em> Defines emphasized text

<fieldset> Defines a border around elements in a form

<h1> This is heading 1

<h2> This is heading 2

<h3> This is heading 3

<h4> This is heading 4

<h5> This is heading 5

<h6> This is heading 6

<i> Defines italic text

<p> Defines a paragraph

<pre> Defines preformatted text

<q> Defines a short quotation

<samp> Defines sample computer code text

<small> Defines small text

<span> Defines a section in a document

<s> Defines strikethrough text

<strike> Defines strikethrough text

<strong> Defines strong text

<sub> Defines subscripted text

<sup> Defines superscripted text

<u> Defines underlined text

Dr. Dobb's encourages readers to engage in spirited, healthy debate, including taking us to task. However, Dr. Dobb's moderates all comments posted to our site, and reserves the right to modify or remove any content that it determines to be derogatory, offensive, inflammatory, vulgar, irrelevant/off-topic, racist or obvious marketing or spam. Dr. Dobb's further reserves the right to disable the profile of any commenter participating in said activities.

Disqus Tips To upload an avatar photo, first complete your Disqus profile. | View the list of supported HTML tags you can use to style comments. | Please read our commenting policy.



Yes, of course, he is. I think references to "pinko languages" should have removed all doubts ;-)


"Real Programmers don’t write specs – users should consider themselves lucky to get any programs at all and take what they get."
"Real Programmers don’t comment their code. If it was hard to write, it should be hard to understand." Please tell me you're kidding...You ARE kidding me,right?


Until it has been ported to Android, you would be better off not using the term "Post PC Hardware" and sticking with iOS devices. When I read the intial title and paragraph, I had hopes that it was supported already on Android.


I liked the "real programmers" passage.

With regard to VB.NET, I wrote above that VB.NET is C# with a butchered syntax and that you are better off just learning C#. Yes, it is on parity with C# regarding features and with Project Roslyn you can correctly translate the source code between those two languages.

My beef with basic is:
- Why learn VB.NET and not C#?
- PowerBASIC and Realbasic are a small niche, at best. Why would you want to waste pupil's time learning what almost nobody uses in production?
- Why start new project in VB.NET and not C#? Existing projects can be effortlessly translated to C# via Roslyn. (minute 55+)

Even Anders Hejlsberg, who oversees all Microsoft managed languages, said that he would not be able to write a code that says a direct cast of Func of "Of Integer". And yes, the audience laughs whenever Visual Basic is mentioned, even though the title of talk is "Future directions for C# and Visual Basic"...


I learned to program over 40 years ago. While the "production" (real-time) programs I wrote were all in assembly language, I also knocked out quick programs (including games) in Basic.
Likewise, VB6 served the purpose of gluing other things together for proof-of-concept demos. VBScript was useful for web programming as well as (in various forms) for Word and Excel macros and Outlook programming.
Since then, VB.NET has proved up to doing just about anything.
But it sounds like you'd enjoy this oldie but goodie:
10-Apr-83 21:30:56

Real Programmers Don’t Write Specs

Real Programmers don’t write specs – users should consider themselves lucky to get any programs at all and take what they get.
Real Programmers don’t comment their code. If it was hard to write, it should be hard to understand.
Real Programmers don’t write application programs; they program right down on the bare metal. Application programming is for feebs who can’t do systems programming.
Real programmers don’t eat quiche. In fact, real programmers don’t know how to SPELL quiche. They eat Twinkies, and Szechwan food.
Real Programmers don’t write in COBOL. COBOL is for wimpy applications programmers.
Real Programmers’ programs never work right the first time. But if you throw them on the machine they can be patched into working in “only a few” 30-hour debugging sessions.
Real Programmers don’t write in FORTRAN. FORTRAN is for pipe stress freaks and crystallography weenies.
Real Programmers never work 9 to 5. If any real programmers are around at 9 AM, it’s because they were up all night.
Real Programmers don’t write in BASIC. Actually, no programmers write in BASIC, after age 12.
Real Programmers don’t write in PL/I. PL/I is for programmers who can’t decide whether to write in COBOL or FORTRAN.
Real Programmers don’t play tennis, or any other sport that require you to change clothes. Mountain climbing is OK, and real programmers wear their climbing boots to work in case a mountain should suddenly spring up in the middle of the machine room.
Real Programmers don’t document. Documentation is for simps who can’t read the listings or the object deck.
Real Programmers don’t write in PASCAL, or BLISS, or ADA, or any of those pinko computer science languages. Strong typing is for people with weak memories.
-- From Peter Capek @ YKTVMV
via Mark Seiden @ dagobah
via James Gosling @ CMU
via Duane Williams @ CMU


I've worked in the finance & banking business, logistics and now health care. In all of those environments, Visual Basic was used *heavily* in production. I prefer Java or Ruby myself, but if you're going to offer advice to beginners, at least try to understand the real world before doing so.


If you're going to quote this old saw about teaching BASIC, I think you should at least attribute it properly. It was written by Edsger Dijkstra. Moreover, the "criminal offense" portion was a reference to COBOL, not BASIC.


I quoted Edsger Dijkstra. He had a very low opinion of BASIC and was opposed to teaching it.

VB.NET is C# with a butchered syntax (you are better off just learning C#). Other modern BASIC implementations are a small niche, at best. Why would you want to waste pupil's time learning what almost nobody uses in production?

Yes, quick and dirty is quick and dirty. But how can you design a complex system (in a team) that is maintainable in a language without much formal verification?


Really? You're kidding, right? Hasn't that old meme run its course? Honestly, grow up.


You are joking of course. BASIC ??-6 allowed me, a cable puller to learn how to make a computer automate mundane tasks. I easily learned this language (the point, no?) and eventually created real-time (yes, I said it) enterprise com components. Of course I learned (yep, brain still no damage) many other languages along the way including your beloved C++ (i assume)...ya, i can do that...but I have no use for it at work...we make quickly developed disposable software. Boss loves me, customer gets VALUE. Everyone happy. Know why it may be hard for your students to learn another language after BASIC? It is cuz they know they have found "good enough" and anything more is a waste. If I could create my website in vb instead of perl, I would. Let me know when you finish getting that file logging function just perfect...I'll be on the bay fishing.


Don't fault BASIC for being a superior language. What counts today is number of equivalent statement that are implemented by a high level language. RAM and performance are only issues in a very few applications, so coding in BASIC (whatever flavor) provides a quick and easy means of designing, coding, and testing complex applications in 10% (or less) time than C++ or any other god-awful syntactically-hampered language. Ask any employer - do you want it quick and working, or slow and owrking.


My first language was BASIC. I have a 20+ year career as a programmer, but only because I was also able to learn (and, in some cases, teach myself) Pascal, COBOL, Assembly, C++, C#, ASP.NET, JavaScript, and many other speciality languages most people have never heard of. Anyone who cannot think beyond the world view of their first language does not have the right stuff to be a career programmer in the first place.


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.

Teaching of BASIC should be rated as a criminal offence: it mutilates the mind beyond recovery.