Home > Newsletter, Blog, and Other Topics > Topic

Other programming languages

Posted by Jason 
This forum is now read only. You can not log in or make any changes. Please use the new forum linked above.
As of March 14, 2011, this forum has been replaced and is permanently set to read-only mode. This means you can view any existing post but cannot open new posts or reply to existing ones. The new forum is located athttp://www.larryullman.com/forums/If you need to post a message, you'll need to register there. If you have to post in order to follow up on a thread started here, well, that's going to be a bit of a pain. I would recommend just posting the appropriate information, or copying the original text from here, or linking to your thread here. I apologize for the inconvenience but this purge will make for better forums in the long run. Thanks.
Other programming languages
July 22, 2010 08:26PM
Hey Larry,

We all know you're a PHP man, as well as Actionscript (Flex/AIR), Ruby, SQL, Javascript, C and C++ but what about other languages. Have you ever wandered into Java, Visual Basic, C#, Perl or Python land? If so, what have been your experiences? Have you always had a commercial reason to learn a new technology or have you thought it would just be fun?
Re: Other programming languages
July 23, 2010 02:35PM
Hey Jason,

Thanks for the question. I'm a PHP person first, I think, in part because I've been using it the longest and the most. I'm probably second most comfortable with JavaScript and ActionScript, with Ruby, C, and C++ somewhere further down. This is mostly a matter of what I've done lately, as things get muddled in my mind. You use many of the same theories from one language or technology to the next, but if I were to make a C++ class today, or a Ruby one, I'd have to double-check my syntax first. Although if I were to make a PHP class next month, I'd probably have to check that syntax, too!

I did a wee bit of Java about ten years ago and I've done some hit and miss JSP over the years, in situations where I had to get a JSP piece integrated into a site. At the time, Java seemed overly strict, but that was in comparison to PHP, which isn't at all strict. Over time I've come to appreciate strict languages, so that probably wouldn't bother me now. Mostly, I don't have a reason to use Java today.

I try not to use Windows, if I can help it, and I don't have a good impression of Visual Basic. But I did use C# on a couple of ASP.NET projects years ago and I enjoyed that. Nice language, makes sense. I event met the guy that created C# at MS's headquarters some years back. Part of my good C# experience was the ASP.NET framework and Visual Studio, both of which are pretty good. If I used Windows, I'm sure I'd do a lot more C#, but the Windows development is a show stopper for me.

I first started programming Web development using CGI scripts in Perl, but found that to be quite tedious. There was a lot of code required just to make form data available to Perl. I've since used Perl here and there over the years. It's a fine language and CPAN (the Perl library of code) is wonderful, but Perl overlaps in usage with Ruby, more or less, so I'd be more inclined to use Ruby, when those needs arise. It's a beautiful language. I lump Perl in with C and C++ though: all languages that have been around for years, are widely used, and you can't reasonably complain about them too much.

I've not used Python, but have heard good things. Good things about Django, too (Python's Web framework). I've also heard lots of good things about Lisp, but the syntax alone makes me shudder. Heard good things about Ada, too. Right now I'm in a "improve the skills I have phase", so there's nothing new on my immediate horizon to start working with.

I'm not sure I'd say I try new things for fun, as my sense of fun these days means not being on the computer! But I learned PHP for a personal (fun) project, so it used to be the case. Still, isn't until there's a commercial need that I really, more thoroughly get into it. For example, I had heard good things about Flex and had been meaning to look into it. Then, about 1.5 years ago or more, I played around with it some for non-commercial reasons. Then I started using it for commercial purposes. Then I wrote a book on it, which expands one's understanding of the technology greatly. Knowing how to use any technology is one level of learning, knowing how to use it really well is another, and knowing how to explain to someone else how to use it really well is yet another. I'd say that the act of writing a book improves my knowledge on a subject by about 20% just because you end up re-analyzing everything that's done. So maybe everyone should try writing a book!

I really like learning new things and perhaps the greatest benefit of my job (i.e., working for myself) is that I'm free to try new things, investigate new technologies. Keeps it interesting. And my most active client gives me a lot of leeway for how things are implementing, so with them I get to dabble and experiment with real-world projects.

So there's a long-winded answer! Now that you're independently employed, are there new things you're thinking about picking up?

Best Wishes,
Larry

Writer/Web Developer/Instructor
Forum Moderator
Re: Other programming languages
July 23, 2010 10:30PM
Thanks for the long reply it's good to get a sense of other peoples experience.

The great part about being self employed is that you have freedom of choice. I try to keep things even in what I do work wise, it has to be fun and it has to earn me money. I still do hobby web development on the side or at least try to find the time. Ruby is the only technology that I have decided to learn for commercial reasons. It seemed to be promoted as some what of a threat to PHP or at least PHP frameworks (Ruby on Rails vs PHP frameworks), so I took an interest in it for that reason only. I love PHP and do not see myself giving it up any time soon. I still haven't put aside time for Ruby yet because I took at look at Flex Builder and became hooked into the world of Flex and ActionScript.

Flex and AIR are the technology of choice for my next commercial focus which is a "productivity" desktop application. I've never created a desktop application before so the experience so far has been challenging and very fun.

When not on the computer for work or hobby I'm on it to play games (I do go outside, honest!). Apart from web development something I have always had an interest in is hobby (strictly hobby) game development. I like programming because you get to make things do things. With a game you get to see physical representations of things doing things, not just in the background like magic or voodoo. A game I play cooperatively with a friend is Battlefield 2 which uses Python for game mods. There is a game mod that we play that kind of killed the AI, so I've decided to learn Python mainly just for that reason. I picked up a copy of The Quick Python Book which seemed to be the most highly praised book on the subject in recent times. Plus it's geared at people that want to get into it quickly and already have some experience programming. So far it is pretty easy syntax wise and I've finally learnt what Django is!

I've been "website" developing for just shy of 10 years and still don't know JavaScript as well as I probably should. I definitely rely way too much on jQuery. JavaScript and SQL are definitely two languages I need to go back and re-learn from scratch. Perl and Java were on the radar for a while but have dropped off, C and C++ are still on the to do list. I've recently had a quick look at some C# code, it sort of looked like ActionScript in a way, is this true?

So commercially it's definitely Ruby, hobby wise it's Python and they both seem very similar! Of course updating HTML and CSS skills is looming on the horizon but I'm not buying into any of the hype, too busy with Flex.
Re: Other programming languages
July 26, 2010 01:28PM
I was a bit surprised at how much I appreciated Flex and now the Yii framework. I've always prided myself on getting my hands dirty (preferring that way, really), but now it seems that what I prefer is to get things done. And the development time for Flex really is impressive. Same goes for Yii. With both I can create this paginated table of database results that's easy to customize and has built-in sorting and it takes no effort.

As for C#, it looks like ActionScript in that they're both OOP and strict languages.

If I ever get any free time, maybe I'll tinker with Python, with your hearty endorsement.

Thanks for the posts!

Best Wishes,
Larry

Writer/Web Developer/Instructor
Forum Moderator