Fog Creek Software
Discussion Board

Still haven't found what I'm looking for.

In my head I know how I want to work.  What my ideal environment and language would be like.  Unforunately, it doesn't seem to exist in the real world.

I envy others who seem to have found it.  They are blissfully happy with C or Java or Python.

Personally I just keep searching.  I find things that get close, that provide what I think I'm after, all they really do is sharpen my own understanding of what I want.

So then I become disappointed, and move on to something else.
I know it might seem, like Philo asserted a while ago [1], that I'm just addicted to counter culture, being deliberately awkared.  I'm not, however.  I just can't find what I want.
Am I being unrealistic.  Should I choose the platform that best suits my need, something that will be good for the job market, and get to know it.
Should I just keep looking, hoping that one day somebody will invent what I want.

Perhaps I should start writing my own langauge and environment, like Bill did with Lingo (final name pending).

Does anybody else have an itch that they just can't reach?


Ged Byrne
Wednesday, November 19, 2003

Ged, you sound jaded (did you grow tired of Rebol?). You're asking questions that can only be answered through personal soul-searching.

I've met some developers who strive to find tools that help them reach new levels of expression & productivity. These folks are often perfectionists who derive satisfaction from building "the Right Thing". Others are content with a set of common tools that are "good enough", and yet they crank out projects like there's no tomorrow.

I don't recommend writing your own language, unless you're prepared to spend the next few years of your life implementing a basic feature set. Writing a new language is usually the ultimate monument to hackerdom ego and self-importance.

Good luck-- go back to the basics. You'll find something interesting.

Wednesday, November 19, 2003

There is no "ideal" environment or language and the search for one is a waste of time.

I know it's an old saw, but a carpenter that allows himself to fall in love with a hammer isn't likely to be much use when there aren't any nails around. It's the job, not the tools.

Wednesday, November 19, 2003


No, I'm still enjoying Rebol.  It's a great idea and wonderful to play with but when it comes to getting the job done it just can't compete with Ruby.

Ruby gets the job done real fast.  Unfortunately, I find myself wanted to do all those nice tricks that Rebol allows.

The tricks are possible, but you have to use eval.  I don't like using eval.

If only I could combine Ruby and Rebol, and have them compile to a tight executable like Purebasic.

Ged Byrne
Wednesday, November 19, 2003

I know what you are saying.  I think that what you learn and focus on needs to be determined by what you need to accomplish.  I work for an ISV that makes and sells Windows applications.  Except for a couple of years a long time ago, we have been using Visual C++ and MFC to get our apps made.  So that is what I focus on learning.  It makes me a bit one-dimensional but extremely useful at the job that I get paid to do.  Of course I also know Pascal, VB, Perl, PHP, ASP, etc., but when it comes to making Windows applications nothing else offers the low-level and high-level benefits of C++.  I have still to run into a problem that I can't solve somehow (even if that means re-writing some of the Windows common controls.)

I don't know exactly what my point is here.  I guess it is:

"Put all of your eggs in one basket and: WATCH THAT BASKET!"
-Mark Twain

It has worked for me so far.  Although my primary goal is to make a good living for me and my family and being a specialist in a relatively high-demand skill has worked well for me.

The Not-So-Philosopher
Wednesday, November 19, 2003

But isn't it interesting how much time developers (especially the ones that usually describe themselves as "hard-core") spend looking for new languages/tricks/tools?

Especially when you compare it to how little time we usually spend trying to improve HOW we use them.

Wednesday, November 19, 2003

Not so,

My personal approach has been "Find something nobody else likes doing, and then do it well."

This, of course, has led to a career in maintenance programming.

I think that this is part of the problem.  All of the tools I see seem to be focused on helping the construction and never the maintenance.

Ged Byrne
Wednesday, November 19, 2003


As for your last maintainance comment... I have found that the refactoring capabilities built into Eclipse are tremendously helpful for maintainance programming (of Java... not sure if it also does the same for C++).  This will surely not satisfy "what you are looking for", but I personally think it is a step in the right direction... if you can find something equivalent in your language of choice.

Good luck in your search :)

Wednesday, November 19, 2003

> "Put all of your eggs in one basket and: WATCH THAT BASKET!"
-Mark Twain

This from a guy who went broke trying to sell a "revolutionary new invention" (the Paige Compositer)

Wednesday, November 19, 2003

Hi Ged--
I've been toying with Ruby a bit, and I've been very impressed with its philosophy and practicality. I was surprised how easily I could make Win/Unix system calls. I think that leveraging the value of the OS platform and interop is the right approach for a language.

PureRubol would be an interesting beastie indeed.

Wednesday, November 19, 2003

Try APL (, K, J, ...) or Lisp (,Scheme, Dylan, Pliant).

No, you won't find what you're looking for there - but you'll probably be able to define it much better after getting the feel for these.

Dylan and Pliant are Lisps without the parentheses (Dylan looks like Pascal, but it's still Lisp). I'd start with Dylan - it's syntax is least offensive to the untrained lisper.

Ori Berger
Wednesday, November 19, 2003

*  Recent Topics

*  Fog Creek Home