D&C GLug - Home Page

[ Date Index ] [ Thread Index ] [ <= Previous by date / thread ] [ Next by date / thread => ]

Re: [LUG] Summary Todays Holsworthy Meeting - June 17th

 

On 18/07/10 09:28, Simon Waters wrote:
On 18/07/10 02:02, Rob Beard wrote:
Dunno, when I've tried to learn C, C++ and Pascal in the past I've
always got frustrated, maybe it's because I was impatient.
I meant languages which are very different in concept.

I found switching from procedural languages to SAS (which is similar to
SQL in mentality) hard, in the my thought processes were wrong. Where as
C to Pascal I think the shift is more syntax than substance, which can
confuse the muscle memory but similar types of "tasks" are easy or hard.
Where as with SQL/SAS languages tasks like duplicate detection become
harder, whilst many tasks involving sorting and grouping are completely
trivial.

I was trying to learn Haskell a while back, but again the switch is
hard, and I got disappointed with Fibonacci series programs which were
only marginally faster to run than doing it on a calculator. On the
other hand I suspect functional languages will be a growing thing, as we
ship more of the "how to" into the tools (which will inevitably do it
better than we would).

Horses for courses, and the devil you know etc. If 0.01% of the effort spent arguing about brackets or indents or any other 'my syntax is better than yours' crap the world would be a different place. The .NET languages were brilliant in one way - your programmers could (in theory) write in whatever language they liked on the same project (there is no technical reason why they couldn't write individual parts of classes in different languages but that never got fully implemented). I would not recommend using the most powerful and productive language setup I've ever seen until MS promise not to throw patents at anyone using mono at all though. I used it for a few years and miss it dearly but you cant write free software with it.

If you want to learn a language then I would recommend something that is at least Object Oriented, can do web pages AND command line and has a usable IDE that can debug remotely. PHP/Pear can be good as you can develop in netbeans or eclipse and theres quite a lot of code to plagiarise (learn by example) from. Ditto Java but the initial learning curve is a bit steeper and it dont do web pages on its own.

As for horses for courses - most of your data should really be kept in a database - sql is a clumsy and not very well designed language but it does the job and has 20 odd years of tidying up behind it. But NEVER call sql from production code - call stored procedures through well thought out objects.

Learn to debug (see ide)
Write (or at leas thing about) interfaces before you write your code (see stored procedures)

But be very lazy - remember the computer can do things billions of times faster than you can even think about it - get the computer to do the work.

Unit Testing and, where possible, let the program/system let you know when its gone wrong - you may be able to fix the problem before the customer get on the phone and wastes the new ten hours of your day balling you out.

But, again be lazy - getting the foundations right may not look flash but 2 hours getting something perfect at the very start can save you millions of hours later.

Tom te tom te tom



--
The Mailing List for the Devon & Cornwall LUG
http://mailman.dclug.org.uk/listinfo/list
FAQ: http://www.dcglug.org.uk/listfaq