For the Love of Code
29 Jul 2011
"I think of programming the same way an artist thinks of painting or a musician thinks of music, it's not simply a means to an end, or a job, but something inside of you that needs to be expressed." - Andrew Wulf
Since December 1st of last year, I have been struggling with articulating the reason for Lasso's existence. Obviously, I have known there is something at the bottom of it all, some reason to continue. Otherwise, I wouldn't have invested the hundreds of thousands of dollars and much of my remaining hair into the language over the last eight months.
But I haven't quite been able to put my finger on it.
Pros and Cons ...
There are some low-level reasons to keep Lasso going: there is a ton of code out there in previous versions of Lasso which shouldn't be wasted. The language has security benefits - and now with Lasso 9, speed, scaleability and stability benefits. There is a great and committed developer community who have been using the language for some time, who help one another out in a socially constructive way.
There are also some reason's why Lasso should cease to exist. It doesn't have a massive user base at the moment. It costs time (= money) to improve and support, and doesn't have the well-spring of millions of brains to draw from, and thus it cannot be free (not to mention, the free bell has rung with other languages already). There are hundreds of languages out there to choose from now, many of whom have competitive traits to one another.
There are also some quasi-insurmountable challenges. The existing code is now plagued by having many versions, all of which are expected to be supported. There are more and more operating systems and datasources to contend with. Where in the early days of the web, supporting "everything" meant supporting a few dozen things, it is now exponential. If there are only 30 things you need to support in a linear fashion, there are only 30 things to focus on. If you want all 30 components to support all other 30 mixtures of components (1x2x3x4...), you now are supporting over a billion options (not just metaphorically). You get the idea.
So why does Lasso exist still? Why hasn't it kicked the bucket?
One of my favourite TED talks is by Simon Sinek, who incidentally makes reference to the technological adoption curve theory I have glued up on my wall and stare at daily. His theory is that we need to have a core reason to exist, or we will fail.
We at LassoSoft struggled early on to find the expression of this reason. Our net result was to focus "security", "speed" and "simplicity". These are things we can easily lay claim to today with Lasso 9, but they are also things which can also change frequently as does the winner of the Indie 500, Stanley Cup, Tour de France, and Wimbledon. In addition not everyone agrees to how these aspects are measured, and thus they are not all universally agreed as the deciding factors of "why" one would use Lasso.
However, there is one thing which keeps us coming back to Lasso. Something which keeps people clinging to the fact of its existence - people who used it right through the Dark Ages when many people just gave up and accepted the horrific yoke of php and other unfortunate languages.
We love to use Lasso. Completing a project in Lasso code brings us satisfaction and joy.
Creation and Creator
This could also can be articulated more meaningfully as "we love to express ourselves and create through code". If you go back to some of my earlier posts, you will find mention of the fact that we can show that Lasso programmers have a significantly higher statistical group of musicians, educators and artists. When you look into the mind of the average Lasso developer, you will find a person who loves to create. Loves to be challenged. Loves to work through puzzles. Loves to learn.
For a musician, anything which makes sound is an instrument. In fact, a bottle or a couple of sticks can inspire limited creative pleasure. But we often lean towards one particular instrument. In my case, I love the guitar. I'll play anything - a digeridoo, a harmonica, a drum, a mandolin - but when I find myself in times of creative need, I suddenly find myself sitting with a guitar.
I would often be paid for making music with other tools. But at night, when the lights dimmed, I wouldn't pull out an electric mandolin. I would pull out the thing that I found most comfortable and which brought me the most joy - the guitar. Thanks to frets, a guitar is easy to play (unlike, say a violin), but can be used to do magical and beautiful things, all the while jumping up and down.
Is is the same with Lasso.
Use it. Love it.
We want to make a language that people love to use to program. Our truest mission should be to create a musical instrument that makes beautiful music, but that can be played by a novice musician or mastered by a virtuoso. We wish to super-enable the creation of beautiful, functional things through the inspiration of human consciousness.
The new goal of LassoSoft and the Lasso language - which incidentally is something consistent and something all existing Lasso programmers agree on - is to create and support a language which is genuinely pleasurable to use. Yes faster, yes more secure, yes more scaleable, and yes more stable. But we want you to love it, if you don't already.
You should choose to use Lasso because you love to create. It is the language of love.
If you are forced to use PHP all day, shovelling coal in the sulphur pit of life, we'd like you to go home, have a beer and quickly whip up the killer app in Lasso. Eventually you might find you can convince yourself that your Lasso skills can more quickly help you at work than just hacking way in the evening. PHP because you have to. Lasso because you love to. As Jono has said: friends don't let friends do PHP.
Our mission is to cater to people who love to create. Programming isn't a horrible chore. Don't just program because it's your job. Program because you love to again.
Create code because it is a gift to humanity. Let Lasso be your favourite media with which to create.
Do you love to code? Is Lasso the language you love? Please let me know and leave a comment.