* The Business of Software

A former community discussing the business of software, from the smallest shareware operation to Microsoft. A part of Joel on Software.

We're closed, folks!

Links:

» Business of Software FAQ
» The Business of Software Conference (held every fall, usually in Boston)
» Forum guidelines (Please read before posting!)

Moderators:

Andy Brice
Successful Software

Doug Nebeker ("Doug")

Jonathan Matthews
Creator of DeepTrawl, CloudTrawl, and LeapDoc

Nicholas Hebb
BreezeTree Software

Bob Walsh
host, Startup Success Podcast author of The Web Startup Success Guide and Micro-ISV: From Vision To Reality

Patrick McKenzie
Bingo Card Creator

The Programming Condition

The human condition can be defined as “the positive and negative aspects of existence as a human being”. It’s the inescapable part of being human and something we cannot change without evolving into something non-human.

Enter “The Programming Condition: The positive and negative aspects inherent in writing code to produce a software programme.”  The act of writing software is, in itself, a means to an end. The ultimate purpose is to produce a set of electronic instructions that achieve a machine driven task, that is, a programme.

The positive aspect of this is that with programming, we can repeat, many times over, the same set of instructions with  little or no extra effort.  It’s like magic, and it puts programmers on the level of wizards!

We are all very aware of the negative aspects of The Programming Condition:
1.    It is time consuming to learn the programmes that others have built when we want to add on or make a change.
2.    The time required to learn problems leads to excessive documentation, which then has to be kept up to date.
3.    The impact of small changes not being understood in the context of the entire programme, and the knock-on effect thereof.
4.    Big programmes get very complex very quickly.
5.    Different programmes don’t generally talk to or leverage each other very well unless specifically built for that purpose. (The common username and password login programme has been written millions of times!)

The good news is that unlike humans, computer programming is, and always has, evolved very quickly.  In the beginning, there was machine code: 1s and 0s. Then Assembly Language came and put the 1s and 0s into words. Over time many higher level languages have developed  to address The Programming Condition. Some, like JAVA, have allowed us to  move away from specific machinery and have allowed more machines to be programmed -, while others, like Visual Basic, have attempted to address the complexities of computer programming -. More recently scripting languages, which don’t require compilation, have attempted to address the speed of delivery of a programme.

Unfortunately, for all the good programming languages have done, they have still not adequately addressed some of the inherent negatives involved in the act of programming. If they had been addressed, then every business that could afford a PC could have custom software designed and developed for their specific needs. Just take a moment to imagine the implications of that! The cost, however, has proved too steep and the risk of failure too high.
In part this failure to do so, has been driven by good software developers needing to be of above average intelligence to even start trying to negate the negatives of The Programming Condition.

We are on a quest to address these negative parts of The Programming Condition. We want a language that can be used by every developer, in every country, in some way, shape or form to help them reduce the negatives and get more of their electronic instructions out and into the world.

We are interested in your views. We want to know if what we are doing is good for business. Would you use it, and why?  http://warewolf.io/download 

Thank you for your thoughts.
Barney Buchan Send private email
Monday, July 15, 2013
 
 
Firstly, I'm not going to download your software, as your website doesn't give me any idea what it is.

Secondly, why do you think you will succeed when so many other smart and well funded people have failed?
Andy Brice Send private email
Monday, July 15, 2013
 
 
Thanks for the response Andy.
>Firstly, I'm not going to download your software, as your website doesn't give me any idea what it is
Im sure you are not the only one in this situation. We have been running a private release until now and this has not been an issue. I think the issue is more than just the download page, but applies to the enitre site. Thanks.

>Secondly, why do you think you will succeed when so many other smart and well funded people have failed?
Great question. Im not sure Im smart. Either way, the space is still open because others have failed. I believe we need to push the boundaries regardless. Our prototype has been in production for 2 years and is proving to be very successful.

Thanks again for the input.
Barney Buchan Send private email
Monday, July 15, 2013
 
 
I'd really like to see some screenshots to be able to figure out how it works. Just text is never going to convince anyone.

I am particularly interested in how your system would cope with complexity. For example, in my day job I build complex web applications for business clients, typically 1,000+ screens, 100-200 tables, 200-500 reports and 200-1000 users. All the usual Enterprise-ish requirements apply, e.g. full audit trail, monitoring, versioning, change-management, etc, etc.

If your system is capable of supporting scenarios like that, then I'd be interested in knowing more, but please put some screenshots on the website. Oh, and think of a better name "werewolf" spelt wrong, with a trendy suffix, is not really very good.
Scorpio Send private email
Monday, July 15, 2013
 
 
@Barney, sorry man, but Lisp is pretty much a perfect language. You can't improve on that.

Also visual programming is a pipe dream. You will never be able to achieve the needed expressiveness to tackle complex problems with visual programming. Even the elders of our craft who played with it aeons ago gave up and went back to writing Lisp and Smalltalk.

The shocking thing is: Even horrid languages like Java are more expressive and suitable for writing software than any visual programming system out there.
Jeremy Morassi Send private email
Monday, July 15, 2013
 
 
As the others said: your first order of business needs to be getting something on the site which convinces me of how much easier / faster etc. I can deliver software using your system.

Experience tells programmers that learning new programming languages / tools is hard and time consuming. You'll need to work very hard at convincing them on the roi before they'll download.
Jonathan Matthews Send private email
Monday, July 15, 2013
 
 
Thanks Scorpio, Jeremy, Jonathan. I have commented on your input below. I appreciate your time and effort.

>I'd really like to see some screenshots to be able to figure out how it works
Thanks Scorpio, great point.
>I am particularly interested in how your system would cope with complexity
It is designed to reduce complexity by making everything visual, It is easy to see how and where something needs to be tweaked or done. This is the goal, I'm not sure if we hit it, hence asking for the feedback.
>think of a better name "werewolf" spelt wrong
Thanks for the input

Thanks for your thoughts Jeremy. Im not seeing custom software being available to all sizes of business so I have to consider that the right language for line of business hasn't evolved yet.

>Experience tells programmers that learning new programming languages / tools is hard and time consuming
Agree 100% Jonathan. This is one of the reasons we are doing what we are doing.

Thanks again everyone.
Barney Buchan Send private email
Monday, July 15, 2013
 
 
>It is designed to reduce complexity by making everything visual

This has been tried lots of times before and it has never really succeeded, except for very limited domains.

I teach kids how to programming using the 'scratch' visual programming environment. Its great for creating little games and animations. It would be hopeless for creating commercial software.
Andy Brice Send private email
Monday, July 15, 2013
 
 
Also if it is visual, there is no excuse not to have some screen shots!
Andy Brice Send private email
Monday, July 15, 2013
 
 
+1 to Andy, that's what I was thinking.
Scorpio Send private email
Monday, July 15, 2013
 
 
>This has been tried lots of times before and it has never really succeeded, except for very limited domains.
Hi Andy. The current implementation has worked extremely well for orchestration of business logic/rules that need a level of transparency between IT and business. The company is moving their LOB dev onto the platform. It will not do well for game development.
>Also if it is visual, there is no excuse not to have some screen shots!
Agreed, schoolboy error on our part. We have made an amendment to the download page and will obviously do a lot more in the launch website. Thanks for your help.
Barney Buchan Send private email
Monday, July 15, 2013
 
 
"It is designed to reduce complexity..."

Law of Conservation of Complexity: Complexity is conserved in any non-trivial system.

You can't really reduce complexity. The best you can hope for is reducing *apparent* complexity via abstractions, such as making it "visual", but ultimately this is either limiting or broken.
Scorpio Send private email
Monday, July 15, 2013
 
 
Please forgive me if I shout.

IT'S "SNEAK PEEK", NOT "SNEAK PEAK"! GAH!

Ahem.  Sorry.  That's one of my all time pet hates.
Richie Hindle Send private email
Monday, July 15, 2013
 
 
Thanks Scropio. We will start talking about making things simpler rather than reducing complexity.
Barney Buchan Send private email
Monday, July 15, 2013
 
 
What you seem to be doing is abstraction, which is a dangerous path, but YMMV.

The screenshot you put up makes it look a bit like Microsoft BizTalk server, which was popular-ish ten years ago, but nothing to do with creating applications (more like plumbing/glue, what people used to call "middle-ware").

It would be worth spending a bit of time proof reading your website as there are errors in the English.

I might check back later if you put up a better website which explains what problem you're solving and shows some meaningful screenshots, etc. In the meantime, I wish you well with your endeavours.
Scorpio Send private email
Monday, July 15, 2013
 
 
Thanks for all the input Scorpio.
Barney Buchan Send private email
Monday, July 15, 2013
 
 
In past I had worked with a few tools that use that visual approach. BPM implementations, BPEL, custom engines such as Vitria and Oracle OSB...

THEY ALL SUCK!

Oh on so many levels.

The main promise -- to let the non-programmers to make or at least read the code -- was never delivered. Instead, one have to hire more specialized (i.e. more expensive) programmers.

For a programmer by trade the tools was nothing but an inhibitor. It takes a few keystrokes to make an assignment in a text-based languge. It takes a seconds of mad clicking to perform the same operation in a visual tool.

And then commit... and the storage format is usually XML, and so no automatic merge for ya! Merge was (is) always a PAIN!

So, NO, ME NOT GONNA USE IT.
Vladimir Dyuzhev Send private email
Monday, July 15, 2013
 
 
Textual commands is much richer than visual commands. As an example consider command line vs windows file manager.

Robocopy C:\A C:\B /COPYALL /XD "%Source%\aaa_css" /XF  %Source%\index.php %Source%\favicon.ico %Source%\google5fxxxx5f9a.html /E /R:0 /DCOPY:T

With file manager we can drag and drop.

Sure. We can create dialogs, different icons for different types of copy, checkboxes etc. But then it is probably more complex than the line above.

I think "visual programming" is suited to specialized domains. Specially providing description. For example: relational database diagram showing relationship between tables, xml specs -in other words "Structure" rather than complex Turing complete processes.

You can keep evolving your model to get around the inherent impedance between visual and text, but then you have to sacrifice the original purpose of such model.

Simplicity of representation.

Complexity of representation will cost you IQ points with your audience.
codingreal Send private email
Monday, July 15, 2013
 
 
Amazing to have a long essay and then just describe "what we are doing" and a link.

Could there not be even a one sentence description of "what we are doing" rather than a page long preamble about programming and the human condition in general.

Based on the comments in this thread, it sounds like the OP has a graphical programming language that works on all platforms and has some sort of ultimate project management features.
Scott Send private email
Monday, July 15, 2013
 
 
Seems he made a demo video.

http://vimeo.com/warewolf
Scott Send private email
Monday, July 15, 2013
 
 
It's really similar to Apple's Automator.

This sort of thing seems like a good idea for new programmers.

It tends to bogs down quickly with complexity.

And it always seems to turn out that the novice programmers/regular folks it is intended for still can't figure it out.

Obviously for doing something like selecting random numbers in the video, it's faster just to type some python, and you end up with code that is easier to understand as it takes up much less room than these huge boxes.
Scott Send private email
Monday, July 15, 2013
 
 
> http://vimeo.com/warewolf

OK. Ready-to-use random generator. Drag-and-drop, viola!

Now let's solve the following problem I had just a week ago with another similar tool -- Oracle OSB. We need to generate a random number formatted as GUID, but the last section of GUID must always contain only decimal digits.

Oracle OSB luckely only uses "boxes" for main flow control; the actual computations are done with XQuery, which is a powerful enough language.

How would I attack the task above with Warewolf?
Vladimir Dyuzhev Send private email
Monday, July 15, 2013
 
 
Since everyone is coming down hard on this, I thought I'd offer some encouragement. These sorts of tools are never popular with programmers - often for good reasons - but there have been companies that have succeeded in this space. The first one that pops into my head is Ironspeed (http://ironspeed.com), which has done quite well. Outside of the crud / business app world, there are other genres where visual programming tools dominate, such as measurement and control systems (LabVIEW) and ladder logic / PLC programming. And of course, over the years there have been a number of 4GL tools.

So if you have a vision, have executed it well, and have an existing customer base that is happy with your product, I would not get discouraged by the feedback here.

Having said that, I think you're wasting your time pitching to BoS. 4GL tools have been around for a long time, most with the promise of revolutionizing software development, so your philosophical statements about software development come off as rambling and cliched. But I assume independent software developers are not your target market. You're better off working on your website and getting the word out to your actual market.
Nicholas Hebb Send private email
Monday, July 15, 2013
 
 
+1 to everything Nicholas said

You are never going to produce something that is  viable alternative to a Java/C++/PHP etc stack for professional programmers. So don't even try. You'll just end up with something that isn't flexible/scalable enough for programmers and is too complicated for non-programmers.

My suggestion would be:

-work out which narrow niche you can best target
-tweak the product and marketing to appeal to that niche
-try really hard to get some lead customers in that niche

If you are successful you can try to broaden the appeal later.

What would be a good niche to target? I have no idea. Talk to the contacts you have in businesses.
Andy Brice Send private email
Tuesday, July 16, 2013
 
 
BTW you might find it useful to go through this list of 10 questions:
http://successfulsoftware.net/2007/04/12/10-questions-to-ask-before-you-write-a-single-line-of-code/
(better late than never!)
Andy Brice Send private email
Tuesday, July 16, 2013
 
 
Hi, I have some suggestions...

about your website:
- put a screenshot on the first page.
- link those vimeo videos (with thumbnails)
- remove that annoying crying wolf from the videos.

about your product:
- market it to professionals looking to automate tasks (not to developers)
- let users create simple (mobile) apps and prototypes
- make it clear what is the target platform of the generated software (web (js)?, android? Windows desktop?)

Good luck!
Néstor Sánchez A. Send private email
Tuesday, July 16, 2013
 
 
Great feedback Néstor. Thank you.
Barney Buchan Send private email
Wednesday, July 17, 2013
 
 

This topic is archived. No further replies will be accepted.

Other recent topics Other recent topics
 
Powered by FogBugz