Showing posts with label java. Show all posts
Showing posts with label java. Show all posts

Tuesday, January 16, 2024

The Heart Behind Liberty BASIC

 As the creator of Liberty BASIC, I want to share the story behind this programming language, a project born out of my passion for making programming accessible, fun, and wondrous for everyone.  My journey in the realm of coding began with the magical experience of BASIC, a language that opened the doors to the world of software creation for me. I want to bring that same sense of excitement and possibility to others through Liberty BASIC.

What makes this especially inspiring I think is that Liberty BASIC was originally meant to be a programming game, where the player programmed robots in BASIC.

Bringing Back the Magic of BASIC

When I realized that the BASIC I was writing for the robot game would become a real programming tool, I decided to go for it!  My idea for Liberty BASIC was to recapture the spirit of the early days of BASIC. BASIC was the gateway for many into programming. It was simple, inviting, and allowed immediate interaction and results. My vision was to reignite that spark of wonder, making programming as much fun as it was for me when I first started.

Simplicity and Approachability

At the heart of Liberty BASIC lies its simplicity and approachability. The language is designed to be easy to learn and use, especially for those who are new to programming. It’s like giving someone a set of simple, intuitive tools to start building their dream projects right away.

Fun and Immediate Results

One of the unique features of Liberty BASIC is how it makes programming fun. I believe in the power of seeing your work come to life quickly. Beginners should be able to write a few lines of code and immediately see a window pop up, a graphic drawn, or a simple game come to life. This immediate feedback is not just rewarding; it's crucial in maintaining enthusiasm and interest in learning.

Liberty BASIC vs. Other Languages

While other languages like Python and JavaScript are powerful and versatile, they can be daunting for beginners.  I've always tried very hard to balance simplicity with capability. 

My Vision and Journey

My personal journey with programming has always been about the joy of creating and of learning new ways to think. With Liberty BASIC, I wanted to offer a tool that makes programming feel like an adventure, not a chore. It's been heartwarming to see people of all ages take their first steps in programming with Liberty BASIC, discovering the same joy and wonder that I found years ago.

In essence, Liberty BASIC is more than just a programming language; it's a celebration of the simplicity, fun, and wonder that programming can bring. It's been a wonderful journey that I am eager to invite others to join.

Links

        Liberty BASIC website 

        Liberty BASIC community forum  

        Liberty BASIC video playlist  

Friday, October 26, 2018

No Software Degree? Don't Let It Stop You!

I saw a an article over on freecodecamp.org where the author tells his story about getting a development job without a degree.  I think it is so inspiring when people share their stories.

I also am an un-degreed software engineer and I’ve been working in the industry for more than 30 years.

I assume that if you are ready to jump in to software development without doing a 4 year program, that you are passionate about writing code! If that describes you, read on!

Here are some tips.
  • Don’t let anyone tell you that you NEED a degree. You can go and get one, sure and if that’s what you want, great. Go do it, but it will take you years and a lot of money.
  • Read a lot. Consume as much programming literature as you can. Read conference proceedings. Read code. Read the History of Programming Languages, read archives of Dr. Dobbs Journal. 
  • Learn several programming languages in different paradigms. I’m familiar with BASIC, 6502 assembly, Forth, C, Objective-C, Java and Smalltalk. Don’t be a one trick pony.
  • Make your own software. Participate in open source projects so you can learn team programming skills. Code with friends. Create your own applications. Write some video games. Try your hand at programming tools. I wrote Liberty BASIC (a popular programming language) in my spare time and now I sell it. If you have a dossier of interesting stuff that you’ve done, it will be easier to get hired. Haven’t done anything interesting? The degree may not be enough.
  • Network like crazy. Almost every job I’ve landed I landed because of people I met at the store, at church, at conferences (that I paid to attend myself), etc.  Join some programming groups on Facebook and meet local people using meetup.com.  This can be really important.
  • Be ready to explain what you know. When you do get that interview, who will hire you if you can’t show on the whiteboard what you learned from your work. Give them a post mortem on your own code. Be ready to say what you could have done better.
Good luck and please check out my Liberty BASIC product!  http://www.libertybasic.com
See you around!

Friday, September 18, 2009

Fractals in a page of code

What's great about BASIC and languages like it is that you don't have a write a lot of code that has nothing to do with what you're trying to create (like Java for example). It should be really easy to throw together a little code and play with graphics. Programming should be fun, not a burden.

Here is a thread that shows how to draw fractals in less than a page of BASIC.

Click to read the thread

Monday, May 19, 2008

Rewrite BASIC language today?

In the Usenet group alt.lang.basic there was a thread recently with the subject heading "Rewrite BASIC language today?" where the question was explored about how BASIC would be written in today's programming world.

Clearly there is a wide range of opinions in the responses. Some opted for being retro and simple. Some advocated adding commands for dealing with various things. It's good to have a discussion about these sorts of things, and this one went well. There are a lot of experienced BASIC programmers in that forum and it didn't turn into a flame war.

In my own response I wrote "BASIC needs to be simple. Adding C or Java features is a mistake for the most part. There is value in keeping things out of the language."

There needs to be a balance. Sometimes it makes good sense to add new things to a language. But as I just said... sometimes. ;-)

Wednesday, February 06, 2008

Web programming in... Java?

I mean, why? Of course that's how I feel about any kind of programming in Java. I recently found a blog where someone reviewed Wallace Wang's Beginning Programming book which teaches Liberty BASIC. The blogger seemed to enjoy Liberty BASIC and then went on to say that we was planning to learn Java. I wish that those presidential candidates would promise to reform our educational system by banning Java from k12 schools. People who are just learning programming need something that gives them a tighter feedback loop like BASIC does. If the learning experience isn't at least a little bit of fun it won't benefit the kids. Period.

People who trash BASIC haven't tried modern versions. Even the old DOS QBasic has everything the beginner needs.

Monday, February 04, 2008

Knocked on the head with BASIC

A close friend of mine schooled in C++, Smalltalk, Java and Groovy told me the other day that he has written his first BASIC program by using Run BASIC. He had never written code in BASIC before, but he took my word for it that BASIC is a great language for throwing together solutions quickly. He said he was struck by the lightness of the BASIC language and that he enjoyed working in it. This is my paraphrase of what he said, because I don't remember his exact words.

I know there are a lot of modern BASIC implementations that force you to declare all your variables and give them types and sizes. Some of them keep the core keywords but add Pascal syntax, and some make BASIC look more like Java. I know there are some benefits to the way these other languages work, but BASIC is really meant to be very light and simple. In my humble opinion any language claiming to be BASIC which forces the programmer to dot too many i's and cross too many t's is not BASIC, but an imposter.

BASIC is a small language without too many rules.

Tuesday, January 22, 2008

Java and BASIC - Simplicity and backwards compatibility?

Bruce Eckel and Joshua Bloch kick the can around about Java and complexity. Read about it here:

http://www.infoq.com/news/2008/01/java-evolution

I especially like this quote about Java and web development:
Web application development - this is difficult, and developing web applications with complex and underpowered technologies like JSP and JSF "is like eating soup with a fork"

I've been a Java programmer for 7 years. I've never liked the language. It always seemed to me to be much too verbose and controlling. It's amazing to me that it has been so popular, but that is more of a marketing accomplishment than anything else.

Run BASIC is a web programming system in development, and a really important part of what Scott McLaughlin and I are trying to do is to manage how the language grows. One important question to ask is how much emphasis to place on backwards compatibility as we more forward. Our goal is to create the best BASIC for the web, and it should still be simple and fun to use even as it becomes more powerful.

I invite your comments. :-)

Tuesday, October 23, 2007

Wednesday, April 25, 2007

Missing the Point

I read a paper the other day that described a system for teaching kids programming. It was one of those robot simulations where the student learns programming by using a special mini-language to teach an on-screen robot to accomplish certain goals.

So in this case the language in question is a simple one, specialized for the robot ideas as a gentle way to introduce programming.

Later in the same paper they described how a newer version of the system switched to Java as the language for the robot. I am amazed how easily people are brainwashed into using the popular thing in place of the right thing. Instead of something simple use the "industry standard" language, no matter how much it might damage their minds. :-/

What would be better? I guess the robot language they were using before would be just fine. Or pick some other simple language if you're looking for mindshare. BASIC, LOGO, Forth, Smalltalk.