It’s rare these days for me to get excited about a new language – because frankly it seems as though there are so many new ones, and yet so little value that they provide.
Which is why it’s pleasantly surprising, on this quiet Monday morning, to see the release of a new scripting language that actually improves the development experience. I’m talking of course about Binary Script – the new language paradigm aimed squarely at experienced developers, but being embraced quickly by assembler and microcontroller coders.
To get a quick look at how it works, head over to the binaryscript.net site, it has the initial overview and online compiler components available already:
How It Works
The concept is very simple. Put in your old-style code, click submit on the BS-inator, and you are immediately rewarded with 100% BS. You’ll be up and overflowing with BS in no time.
Benefits
Why another language? Do we really need yet another development environment. Turns out that yes, there are plenty of advantages. Here’s just a few:
Productivity
One of the main frustrations I’ve experienced as a developer, and I hear regularly from other developers, is the problem of non-standard keyboards. When I move from my machine to another machine, there’s a mental chunking that needs to take place as my hands adjust to the nuances of each keyboard. The Delete key spaced differently, the quotes key a little further inset than before, the capslock key just a little too big when I go to hit ‘a’, that kind of thing. It’s frustrating, and also a productivity killer. A recent study by bs-interactive suggested that changing keyboard accounts for an increase of 4% in keying errors, and a whopping decrease of 7% in productivity in the first 2 hours as the user got up to speed.
This is the key area that binaryscript targets. With it’s simple two key requirement – just a 0 and a 1 – it takes the pain out of keyboard adjustments.
Not only that but the new BS-inator web module UI features colour syntax highlighting, so at a glance you can see the code elements with the utmost clarity. That’s productivity for you:
Job Protection
But aside from all the productivity benefits, let’s focus on the main advantage for developers – career protection. Just like Assembler in the past, BinaryScript today produces a huge mess of output – completely incomprehensible to anyone but the most boring and geeky of coders. You thought those people speaking Klingon to each other were eye-rollingly pathetic – just wait until you see them sharing binaryscript snippets on bsbin.com (or via old-school sites such as this example).
Input Devices
Binary Script has also – finally! – opened up code development to a whole new range of input devices.
Mouse Coding
Whereas previously coding required a keyboard, now binaryscript coders can use a mouse to quickly write code. The new binaryscript mouse driver simply allows left and right mouse buttons to match 0 and 1 – or if you’re particularly inclined – 1 and 0, it’s very flexible. And already, developers are producing tutorials on how to use existing mouse infrastructure to drive their binaryscript projects:
Touch Coding that actually works
Not only that but consider the options for touch screens – no more fiddly on-screen keyboards, instead just two big touch areas. Writing code has never been this fast before.
Collaborative Binary Script Coding
Digital tables (eg the Samsung SUR40) promote collaborative coding experiences. Using the Multi-touch SDK, table top device makers can easily incorporate collaborative binary scripting applications in their offering.
Minority Report might actually become a reality
And then consider Kinect and motion controlled input devices – new, exciting ways of coding are instantly available to the masses. Wii Coder – a new game from Nintendo is already planned for a June beta release.
Security and Built In Obfuscation
One of the key advantages of a binaryscript implementation is the built in obfuscation and resultant security. And increased security is only another conversion away. For example, take a line of code and convert to binaryscript. Then take that resulting script and convert it again. You’ve got different binary script. And so. For extremely high security implementations an iterative process of 4 conversions effectively represents an equivalent of 2048 bit security (or 00110010001100000011010000111000 in bs terms).
BinaryScript art
Coding isn’t just about productivity and work, it’s also about culture, enjoyment and free expression. Which is why the rising movement in binaryscript art is so wonderful to see. Developers can not only “write beautiful code, they can write code that looks beautiful”. Consider this stunning binaryscript code snippet. As a a piece of code it powers the feed reader of a Reddit app, as a piece of art, well, you be the judge:
Keeping Up To Date with BinaryScript
Follow @binaryscript on Twitter and share your binary script experiences – every mention will feature on the Binary Script Twitter page:
The BS Roadmap
There’s plenty on the binaryscript roadmap, including the bs shortner service for sharing bs on Twitter and other bs enabled social sites.
There’s also bugs that need addressing, and the BS team have already prioritised the Binary Script Object Definition error that people often receive.
There’s even some open source projects underway to implement a de-BS-inator function.
Reactions
Perhaps the most surprising part of the binaryscript developer movement is how quickly it has been adopted by industry leaders. For instance, I thought Bill Gates’ recent bs comment was an excellent example of the kinds of pure bs we can expect:
“The industry takeup of binaryscript just goes to show that Assembler really is now a 2nd class citizen.”
Easter Eggs
Like most things these days (and this weekend actually) the binaryscript site has a few hidden gems – just for the true geeks. Here’s a tip, try converting the binary script for these exact phrases:
What would Maslow say?
What would Socrates say?
What is BinaryScript?
There’s others (I’m can reliably inform you) so rest assured any spare moments you have can be profitably applied to this endeavour.
Today is an exciting day for developers
It’s an exciting day to be a developer. And by ‘day’ I’m referring to today specifically. Because it seems (by complete coincidence I’m sure!) at this time exactly one year ago we witnessed the release of another new language – see thenextlanguage.net for details. Whereas last year we had Dflat, this year we have BS.
Yes, this is obviously an April Fools Day joke
If you’ve read this far, then (hopefully) it is because you are enjoying the gag. We don’t really expect anyone to be fooled. In fact I don’t think anyone who prepares an April Fools joke really expects anyone to be fooled anymore, the days of fooling people passed years ago. Instead they hope people are amused.
In our case, the whole site has basically a single, simple joke – we just wanted to ‘announce’ something with the initials BS. And it went from there. We hope you were amused. Or at the least it raised a corner of your mouth in the start of a smile.
So, instead of leaving a comment to the effect of ‘Good try’, ‘Didn’t fool me’, ‘Not funny’or some-such, instead leave a comment on how we could have made it funnier. Thanks.
BTW – since we’re all upfront about the joke, I want to make sure credit is given where it’s due: Andrew was the one who came up with the initial idea, and then most of the components, did the coding and organised the hosting, etc. I just basically laughed about it when he told me the idea. And I might have come up with the mouse input concept. The rest was all @coatsy.